浅谈Node.js中ES6导入语法的使用方法


本文摘自PHP中文网,作者青灯夜游,侵删。

Node.js中如何使用ES6导入语法?本篇文章就来给大家介绍一下Node.js中ES6导入语法的使用方法。

模块是导出一个或多个值的 JavaScript 文件。导出的值可以是变量、对象或函数。

Node.js 应用由模块组成,其模块系统采用 CommonJS 规范,它并不是 JavaScript 语言规范的正式组成部分。【推荐学习:《nodejs 教程》】

在 CommonJS 中,有一个全局性方法 require(),用于加载模块。

1

2

// 加载 path 模块

const path = require('path')

而 ECMAScript 模块(简称 ES 模块或 ESM)是 JavaScript 语言规范中添加的一个模块,正在寻求统一和标准化模块在 JavaScript 应用程序中的加载方式。

以下导入语法由以下 ES 模块标准组成,用于导入从不同 JavaScript 文件导出的模块:

1

import XXX from 'xxx'

Node.js 不支持直接导入 ES6。尝试在 JS 文件中编写 import 语法:

1

2

3

4

// index.js

import { sep } from 'path'

 

console.log('print: ', sep)

使用 npm startnpm run dev 运行 Node.js,您将遇到以下错误:

1.png

由于我们使用了 ES 模块语法导入 path 模块而导致程序崩溃。

而目前最快速的解决方法是,我们可以使用 Node.js 推荐的方法,在 package.json 文件中设置 "type": "module"

1

2

3

{

  "type": "module"

}

此解决方案适用于最新的 Node.js 版本 14.x.x 以上的版本(撰写本文时为 15.6.0)。

阅读剩余部分

相关阅读 >>

exports和module.expors之间有什么区别及联系?

详解主动终止node.js进程的几种方法

浅谈node.js中require()的工作原理

node.js中lts和current有什么区别

http协议发展过程一览

npm机制深入理解

nodejs接口如何传输数据?

css link与import的区别是什么

使用node.js “debug”模块避免日志污染应用程序日志

深入浅析node.js异步编程中的callback(回调)

更多相关阅读请进入《node.js》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...