node支持ESModule
//node最新版本进一步增强了对ESModule的支出,只需要在package.json增加一个选项即可
"type":"module"
也就是把我们不用把文件的扩展改成mjs直接用js即可
//命令行运行:node --experimental-modules app.js
如果还想使用commonjs的话只需要把文件的扩展名cjs即可
//命令行运行:node --experimental-modules app.cjs
兼容方案
babel是当前最流行的兼容方法,我们任意的使用目前最流行的特性,借助babel可以在低版本的node使用ESModule模块化
安装依赖
yanr add @babel/node @babel/core @babel-preset-env -D
新建.babelrc文件 也就babel的配置文件
一下两个配置presets/plugins 二选其一即可
{
"presets": [
"@babel/preset-env"
],
"plugins": [
"@babel/plugin-transform-modules-commonjs"
]
}
谢谢观看,如有不足,敬请指教