偶尔做题,总嫌弃在线的编辑器不好使,于是习惯性用自己的编辑器去敲代码,用命令行直接node xxx.js;最近想实现一个小功能,一个js声明一个class ,在另外一个js中引入,感觉上非常常规的操作,但是我踩了一个坑;
image.png
文件结构如上,search是声明class的,testSearch是用来调用class的;
直接使用node testSearch.js 就会报错:
image.png
任你千方百计,他只有一计;很是无奈,最后去使用webpack打包了一下这两个文件,输出一点问题都没有;
回过头看看这个问题:原来是node仍没有继承这个imports和export;
node官方提供了一个尚在实验阶段的模块,可以直接在node环境下使用import和export (应该是有一些副作用);
node版本需要在9.0以上;
同时,js的文件后缀要改成mjs。
最终:使用 node --experimental-modules XXX.mjs;
就可以在node中使用import和export
image.png
网友评论