4 ms·
Gotcha in ES6 import is that you need to import the default export specifically eg. import default as Foo, * as Bar It would be much easier if it was one names
by z3t4 6y ago
Gotcha in ES6 import is that you need to import the default export specifically eg. import default as Foo, * as Bar
It would be much easier if it was one namespace like in Node.js require. eg. var Foo = await requires("foo", {fs: "/home/user"})
Node.js modules are pretty much perfect besides the security flaws.
- apatheticonion 6y agoYeah I am sad that ES6 imports don't allow for easy namespacing. You can get around this with a double barrel. In the outer barrel, export your individual things // index.barrel.js export * from './foo.js' Then in your main barrel re-export them under a namespace // index.js export * as foobar from './index.barrel.js' Then from you application you are forced to have a named import with the namespace defined // main.js import { foobar } from './foobar/index.js' foobar.foo() You can submit a proposal to introduce namespacing to ES6 imports