编写ESM风格的nodejs应用
前言
众所周知,nodejs应用刚出现的时候,大家都在编写commonjs风格的应用。
随着nodejs逐步的实现ECMAScript规范。大家更乐意使用esm的编码风格。
本文旨在引导大家无负担的将编写nodejs应用时的风格切换为esm。
一些小提示:
commonjs风格:使用
module
,requrie
, 等关键字来进行模块操作
esm风格:使用import
,export
等关键字来进行模块操作
操作
正如古早以前的笑话,将一头大象放进冰箱一共要分几步?
因此,我梳理了一个操作步骤:
- package.json中添加字段:
"type": "module"
- 将src代码中的
require
语句重构为import
语句,注意也不要漏掉module.exports
- 将
import
语句中的文件路径补全对应的扩展名(可以使用require to import 插件来自动化操作) - 如果有导入json文件,使用
node --experimental-json-modules src/app.js
这种方式进行处理