【发布时间】:2018-11-23 13:32:52
【问题描述】:
Node.JS 10 添加了对加载 ES6 模块的实验性支持,这些模块已经在浏览器中运行。这意味着我们最终可以为 Node.JS 和浏览器使用完全相同的文件,而无需任何转译或 polyfill。
除非我们不能。 Node.js 需要 .mjs 扩展名才能将文件作为模块加载。我尝试使用符号链接来欺骗节点,但节点绕过了它:
D:\web\lines>node --experimental-modules ES6test.mjs
(node:7464) ExperimentalWarning: The ESM module loader is experimental.
D:\web\lines\ES6test.js:6
import myLibrary from "./MyFile.mjs";
^^^^^^^^^^^^^^^
我想不出任何其他的解决方法来完成这项工作 - 这真的会使整个 ES6 模块支持变得无用。
其他人能想出一些技巧让 Node.js 忽略扩展吗?
【问题讨论】:
标签: javascript node.js ecmascript-6