欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

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

时间:2023-06-22
Node.js项目如何使用ESModule 参考文章

先上参考:

Node.js Setup With Typescript, Nodemon and
ESM.Can’t run my Node.js Typescript project TypeError
[ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension “.ts” for
/app/src/App.tsNode.js 如何处理 ES6 模块 应用环境

在node.js项目中一般推荐使用commonjs进行开发,但是有的时候我们可能需要引入外部的ES模块。由于commonjs和esm对export和import/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

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。