导入与打字稿中的要求
当我正在阅读Angular2文档时,我在这里遇到了下面的代码。
SRC / polyfills.ts
import 'core-js/es6'; import 'core-js/es7/reflect'; require('zone.js/dist/zone'); if (process.env.ENV === 'production') { // Production } else { // Development Error['stackTraceLimit'] = Infinity; require('zone.js/dist/long-stack-trace-zone'); }
在上面的代码中,我们可以看到有两个import
语句和require
语句。
“core-js”和“zone.js”都是节点模块。
我的问题是 为什么import
用于core-js, require
“zone.js”,请问有什么具体的原因吗?
使用TypeScript,如果模块有声明文件(参见basarat书中的声明文件),则可以使用import
。
如果没有声明文件,TypeScript编译器不知道这个模块是否存在,所以你需要使用require
而不是编译检查。
- Firebase Angular 4基于节点环境进行初始化
- 如何在使用NodeJS目标的TypeScript中正确使用模块和接口?
- 从TypeScript Firebase Admin SDK初始化失败
- Angular 2 Module没有导出成员
- 如何在输出目录中使用TypeScript包含node_modules
- Node.js process.stdin问题typescript(tty.ReadStream vs ReadableStream)
- 如何将@types的版本与NodeJS Typescript中关联包的版本相关联?
- 如何在退出时执行asynchronous操作
- 如何在Electron中使用node_modules