如何设计微商城网站建设,外贸网站交易平台,网站开发 工资高吗,最漂亮的网页用node启动mjs文件报错#xff1a;require is not defined in ES module scope
现象如下#xff1a; 原因#xff1a; 文件后缀是mjs, 被识别为es模块#xff0c;但是node默认是commonjs格式#xff0c;不支持也不能识别es模块。
解决办法#xff1a;把文件后缀从.mjs改…用node启动mjs文件报错require is not defined in ES module scope
现象如下 原因 文件后缀是mjs, 被识别为es模块但是node默认是commonjs格式不支持也不能识别es模块。
解决办法把文件后缀从.mjs改成 》.cjs后缀 补充资料 1. 什么是 .cjs 和 .mjs .cjs 代表使用 CommonJS 模块.mjs 代表使用 ES 模块 2. 那为什么要这么麻烦分出两种模块呢 直接 .js 不行吗 首先我们来了解一下两种模块的区别 CommonJS 模块的 require() 是同步加载的而我们的 ES 模块的 import() 是异步加载的require() 不能加载 ES 模块import 可以加载 CommonJs 模块但是不能用大括号解构只能作为整体导入用点来取属性 当你用 .cjs 后缀的时候那么就代表使用 CommonJs 模块规范不能使用 ES 模块的 import 命令.mjs 同理。