根据理解,Node js使用CommonJS模块模式,并使用CommonJS 我们使用require()来导入节点模块。
在Angular 2应用程序开发中,我们使用@ angular / core,@ angular / common等 节点模块。
我的问题是:
为什么我们使用'@ angular / core'中的“import {}”[这是ES6模块语法] 而不是commonJS require()语法来访问节点模块 在angular2代码文件中。
答案 0 :(得分:4)
原因是Angular2是用TypeScript编写的。
TypeScript是ES2015的超集,并且希望尽可能接近ES2015建议的语法。这就是您从语法中使用ES2015 import {}的原因。
但是,TypeScript还带有内置的转换器(tsc)。这意味着您编写TypeScript代码,但在tsconfig.json
中定位特定的EcmaScript版本干杯