本文摘自PHP中文网,作者青灯夜游,侵删。
Node.js中如何使用ES6导入语法?本篇文章就来给大家介绍一下Node.js中ES6导入语法的使用方法。模块是导出一个或多个值的 JavaScript 文件。导出的值可以是变量、对象或函数。
Node.js 应用由模块组成,其模块系统采用 CommonJS 规范,它并不是 JavaScript 语言规范的正式组成部分。【推荐学习:《nodejs 教程》】
在 CommonJS 中,有一个全局性方法 require()
,用于加载模块。
1 2 |
|
而 ECMAScript 模块(简称 ES 模块或 ESM)是 JavaScript 语言规范中添加的一个模块,正在寻求统一和标准化模块在 JavaScript 应用程序中的加载方式。
以下导入语法由以下 ES 模块标准组成,用于导入从不同 JavaScript 文件导出的模块:
1 |
|
Node.js 不支持直接导入 ES6。尝试在 JS 文件中编写 import
语法:
1 2 3 4 |
|
使用 npm start
或 npm run dev
运行 Node.js,您将遇到以下错误:
由于我们使用了 ES 模块语法导入 path
模块而导致程序崩溃。
而目前最快速的解决方法是,我们可以使用 Node.js 推荐的方法,在 package.json
文件中设置 "type": "module"
。
1 2 3 |
|
此解决方案适用于最新的 Node.js 版本 14.x.x
以上的版本(撰写本文时为 15.6.0
)。
相关阅读 >>
exports和module.expors之间有什么区别及联系?
使用node.js “debug”模块避免日志污染应用程序日志
更多相关阅读请进入《node.js》频道 >>
Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者