问题标签 [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 投票
5 回答
95182 浏览

javascript - ES6:从 URL 导入模块

是否可以在 ES6 中从外部 url 导入 javascript 模块?

我试过(使用 babel-node):

0 投票
1 回答
5025 浏览

javascript - 从 ES6 模块导入函数表达式或函数声明有什么区别?

据我了解(参见第 16.3.2.1 节),ES6 允许函数/类导出操作数使用不同的语法。区别在于是否需要在导入时将导出的函数解释为函数声明,在这种情况下您可以编写:export default function () {} // (a)或函数表达式: export default (function () {}); // (b)

作为一个可能的相关旁注:我读到进口被提升,但我不确定这在这种情况下意味着什么。

以这个例子为例:

import foo from 'my_module'; // (c)

据我了解,上述语句会将我导出的函数保存在一个foo变量中。该变量是否被提升,或者是什么,何时?

最重要的是,使用导出函数和使用导出函数有什么区别(在设置方面foo)?my_module(a)(b)

0 投票
2 回答
14534 浏览

javascript - ES6 导入的定义执行顺序是什么?

我已经尝试在互联网上搜索导入模块的执行顺序。例如,假设我有以下代码:

其中one.jstwo.js定义如下:

控制台输出是否保证为:

还是未定义?

0 投票
2 回答
3121 浏览

typescript - 如何更换带有 ESM 导入的指令?

我正在尝试编写一个 TypeScript 应用程序并得出一个结论,即我不喜欢<reference path />三斜杠指令。我发现它更适合使用import 'something'

但是当我尝试替换我的参考路径时,我不断收到模块未知的错误。

这是我的文件夹结构:

应用视图模型.ts

应用程序.ts

这个工作得很好。如何让以下代码也能正常工作?

对于“noidea”,我尝试了:ViewModels/ApplicationViewModelApplicationVMasl。我什至将它与它结合起来,<reference path />但它也没有帮助。

0 投票
2 回答
1727 浏览

javascript - 浏览器将如何处理 ES6 导入/导出语法

我一直在思考这个问题很多天,我决定问专家。

浏览器将如何处理新的导入/导出语法?我的意思是:模块会被异步加载吗?仅引用我的主文件或入口文件和浏览器将延迟加载所需模块。

也许我错过或误解了这个新架构的一些东西?

非常感谢你!

问候。

0 投票
6 回答
2906 浏览

reactjs - 为什么要导入 React

我的代码只有在导入 React 后才有效,但我没有在任何地方使用 React,而是在使用 reactDom

为什么它需要导入 React ?

0 投票
4 回答
73875 浏览

javascript - ES2015“导入”在带有 --harmony_modules 选项的节点 v6.0.0 中不起作用

我正在使用节点 v6.0.0 并想使用 ES2016 (ES6)。但是我意识到“导入”语法不起作用。“导入”不是在 ES2015 中编写模块化代码的基础吗?我也尝试使用--harmony_modules选项运行节点,但仍然遇到有关“导入”的相同错误。这是代码。

没有“导入”的工作代码:

带有“导入”的代码无效:

服务器.js

数字.js

我还检查了http://node.green/以查看支持的 es6,但无法理解为什么它不能与 --harmony_modules 选项一起使用。请帮忙。

0 投票
1 回答
92975 浏览

javascript - Node.js 计划支持导入/导出 ES6 (ECMAScript 2015) 模块

我一直在寻找整个互联网,但没有明确的答案。

目前 Node.js 仅使用CommonJS语法来加载模块,如果你真的想使用标准的 ECMAScript 2015 模块语法,你要么必须事先转译它,要么在运行时使用外部模块加载器。

目前我不太赞成使用这两种方法中的任何一种,Node.js 维护者是否甚至计划支持 ECMAScript 2015 模块?我根本没有找到关于这个的提示。

目前 Node.js 6.x 声称支持 96% 的 ECMAScript 2015 功能,但没有任何对模块的引用(Node.js ECMAScript 2015 支持链接)。

你知道 Node.js 是否会在不久的将来支持这些开箱即用的模块吗?

0 投票
2 回答
4401 浏览

javascript - ES6 (ECMAScript 2015) 模块:导入 index.js

在互联网上看,我对特殊的“index.js”模块文件感到困惑。

使用 babelJS + Node.js 或Browserify / Webpackimport myLib from "./libs"我可以使用(即省略/indexor/index.js部分)在“libs”目录中导入“index.js”模块。

ES6(ECMAScript 2015)模块官方标准是否支持“index.js”模块解析(指定包含文件夹)?还是只是“自定义”Node.js / CommonJS转译行为?

是否可以省略/index| /index.js所有浏览器中的导入的一部分(什么时候所有浏览器都支持模块)?

0 投票
3 回答
29938 浏览

javascript - ES6 模块导入是否执行导入文件中的代码?

js 文件中的代码是否在导入期间运行?如果是,那么一次还是每次?例如