Node 的导出是 module.exports、导入是 require();ES6 导出是 export、导入是 import。总的来说没啥关系。 倒没有冲突,因为你只能用 Node 自带的这种模块化方案;如果你非要用 ES6 这种,只能用 babel 做转译。像三大框架这种你能混着用的,就是因为有 babel 存在(像 Vue 就是有 Webpack 再包了一层),你写哪种都成,反正最后编译出来都是 Node 这种。 P.S. Node 8.5 之后倒是引入了 mjs,可以用 ES6 这种模块化方案了,不过到现在都 Node 14.4 了,这个还是实验性特性,没有正式确定下来。
Node 的导出是
module.exports
、导入是require()
;ES6 导出是export
、导入是import
。总的来说没啥关系。倒没有冲突,因为你只能用 Node 自带的这种模块化方案;如果你非要用 ES6 这种,只能用 babel 做转译。像三大框架这种你能混着用的,就是因为有 babel 存在(像 Vue 就是有 Webpack 再包了一层),你写哪种都成,反正最后编译出来都是 Node 这种。
P.S. Node 8.5 之后倒是引入了
mjs
,可以用 ES6 这种模块化方案了,不过到现在都 Node 14.4 了,这个还是实验性特性,没有正式确定下来。