> Regarding the internal server error
Ahh, thanks. Yeah, not only is it confusing to see the "edit" button, but
especially since clicking it asks you to login to the site as if to verify your
authorization to do such. :)
> I guess you'd intended to write export {foo as default} instead of export
> default foo...
Well, no, until your reply I didn't realize there was a difference in the two!
Yikes. That's… surprising.
Just to make sure I'm crystal clear… in my original example:
```js
var foo = 42;
export default foo;
foo = 10;
```
That exports a binding only to `42`, not `10`. But:
```js
var foo = 42;
export {foo as default};
foo = 10;
```
That exports a binding to `foo` so the importer sees `10`. Correct?
> All three assignments throw a TypeError exception
Thanks for the clarifications!
Would it then be appropriate to explain that conceptually the binding would
otherwise indeed be 2-way, but that the immutable/read-only nature of the
bindings is what prevents an outside mutation of a module's internals? That is,
without such bindings (and errors), a module could be changed from the outside?
Also, are these errors runtime or static? I'm guessing from the spec text you
quoted they're runtime. If so, was there a reason they couldn't be static?
-----
I have some modules where the intentional design of the API has been for a
consumer to be able to change property value(s) on the public API, and the
module would behave differently corresponding to those values, almost like if
they were "configuration".
I take it there's no way to do this directly on the module namespace (even with
the namespace import) with ES6 modules? So basically to do that I'd have to
export an object (called like `config`) that holds such intentionally mutable
properties?
Similarly, the (much maligned but still somewhat popular) pattern of having
module "plugins" which attach themselves on top of an existing API… sounds like
this pattern is also not supported?
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss