为什么我不能在Node.js v10中“从'readline'导入*作为readline?

时间:2018-08-27 19:41:15

标签: javascript node.js import ecmascript-6 readline

在Nodejs文档中,我看到了:

  

从“事件”中导入EventEmitter;

     

从'fs'导入{readFile};

     

从'fs'导入fs,{readFileSync};

https://nodejs.org/api/esm.html

但是有了“ readlines”,我看到了:

  

const readline = require('readline');

https://nodejs.org/dist/latest-v10.x/docs/api/readline.html

但是在StackOverflow中,我看到了:

  

从“ readline”导入*作为readline;

TypeScript + NodeJS readline property missing

但是我尝试了import的上述和其他变体,但无法使其正常工作,因此我必须使用require。有人可以向我解释为什么是这种情况,因为readline是默认的节点模块?

谢谢。

1 个答案:

答案 0 :(得分:1)

在Node.js LTS中,默认情况下尚未使用import语法。除了将文件的扩展名从--experimental-modules更改为{{1}外,您还可以使用Babel这样的编译器来使用它,或者在运行Node.js脚本/服务器时使用.js标志。 }。