Node.js项目如何使用ES模块

本文介绍了在Node.js项目中如何采用ES模块,包括参考文章、应用环境和两种解决方案:修改文件扩展名为.mjs,以及利用Node.js的实验特性结合tsconfig.json和package.json配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Node.js项目如何使用ESModule

参考文章

先上参考:

应用环境

在node.js项目中一般推荐使用commonjs进行开发,但是有的时候我们可能需要引入外部的ES模块。由于commonjs和esm对exportimport/require的用法不同,会导致应用编译报错。

解决方案

1.修改扩展名

将ES6模块的文件的扩展名改成.mjs。Node.js 遇到.mjs文件,就认为它是 ES6 模块,默认启用严格模式,不必在每个模块文件顶部指定"use strict"

2. 使用node的实验特性

tsconfig.json

{
	"module": "ESNext",
	"moduleResolution": "node"
}

package.json

{
	"type": "module"
}

注意安装ts-node插件,为了解析ts文件。

node启动:

node --loader ts-node/esm --experimental-specifier-resolution=node ./export-func/index.ts

nodemon启动:

nodemon --watch './**/*.ts' --exec 'node --experimental-specifier-resolution=node --loader ts-node/esm' ./export-func/index.ts
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值