问题标签 [es6-modules]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
82076 浏览

typescript - 如何在 TypeScript 中使用带有导入的命名空间

我在两个单独的文件中有两个类,一个从另一个扩展。基类包含一些import使用节点模块的语句。我不清楚为什么派生类(在单独的文件中)不能识别基类!!!???

有人可以澄清一下吗?

接着

编译后我得到:

0 投票
2 回答
3015 浏览

typescript - 如何从多个 TypeScript 文件构建单个 ES6 模块(用于前端库)

0 投票
8 回答
85281 浏览

javascript - ES2015 导入在 Firefox 中不起作用(即使在顶级)

这些是我的示例文件:

t1.js:

t2.js:

当我在 Firefox 46 中加载页面时,它返回“SyntaxError:导入声明可能只出现在模块的顶层” - 但我不确定导入语句可以在这里获得多少顶层。这个错误是不是一个红鲱鱼,并且根本不支持导入/导出?

0 投票
0 回答
66 浏览

ecmascript-6 - 使用 SystemJS 和 JSPM 加载两个不同版本的 moment.js

免责声明:这是一个假设的场景。

假设我有两个 ES6 模块, 它们module-a依赖于.momentjs@1.xmodule-bmomentjs@2.x

如何构建 SystemJS / JSPM 配置和模块导入语句,例如get和module-agets ?momentjs@1.xmodule-bmomentjs@2.x

0 投票
1 回答
129 浏览

javascript - ES6 和“谁引进了我”?

我正在使用在 ES6 兼容的 javascript 上构建的 javascript 系统(我认为?),该系统已编译/转换为与浏览器兼容的 javascript(Wordpress Calypo,如果重要的话)

现代 javascript 是否有办法反映到调用上下文中?换句话说,如果我有一个 javascript 模块 foo

有没有办法在运行时告诉哪个其他 javascript 模块和/或文件导入了我的“foo”模块?如果这是不可能的,是否有一种通用的方法可以通过静态分析来做到这一点。如果我的问题没有任何意义,因为我做了一个不正确的假设(最有可能的情况),我希望能纠正这个假设。

0 投票
2 回答
493 浏览

javascript - 直接导入 ES6 模块元素还是在导入后解构 const 赋值?

对 ES6 模块有些陌生,发现自己在以下两种模式之间徘徊......

模式 #1 - 解构import

模式 #2 - 解构const

我喜欢模式#1 的简洁性,但我也喜欢模式#2,因为它看起来更明确。

是否有充分的理由使用其中一种?

0 投票
1 回答
58 浏览

ecmascript-6 - 从“文件”导入 * 作为 x 和 {y,z}

简而言之,如何将这两行代码结合起来?

我找不到有效的语法。我试过像

注意这是 ECMAScript 2015(第 6 版,ECMA-262)。

0 投票
3 回答
4365 浏览

javascript - Javascript 参考与绑定...有什么区别?

我最近在 Kyle Simpson 的 You Don't Know JS: ES6 中读到了以下内容

“[ES6 模块导出] 到内部模块定义中标识符的实际绑定(几乎像指针)。”

我的困惑是这些绑定与引用有何不同...

我了解 JS 中的引用仅适用于非原始类型(如对象),因此给定

object1现在object2引用(它们都是引用)同一个对象。
如果我向 中添加一个属性object2,我也在向object1

而且我可以看到绑定可以适用于原始类型和非原始类型

绑定就像引用一样,除了原始值也可以共享绑定(而引用仅限于非原始类型)?

我觉得我在这里错过了一些东西......

0 投票
2 回答
2537 浏览

javascript - `export default x` 和 `export {x as default}` 之间有区别吗?

我知道使用 ES6 模块导出时,导出的内容和导入的内容之间会发生绑定,因此当导出的变量发生变化时,导入的变量会显示出这种变化。

但是,我还读到导入的变量仅在某些情况下携带与导出变量的绑定。

我的具体问题是,在以下两种情况下,导出变量的绑定方式是否存在差异......

0 投票
2 回答
287740 浏览

javascript - 如何在 JavaScript 中为默认导入设置别名?

使用 ES6 模块,我知道我可以为命名导入设置别名:

而且我知道我可以导入默认导入:

我想给默认导入起别名,我认为以下方法会起作用:

但这会导致解析(语法)错误。

我如何(或者我可以?)为默认导入设置别名?