我已将我的应用升级到最新的Angular 4(beta-8)版本。但是我一直有以下错误:
@angular\core\src\change_detection\differs\iterable_differs.d.ts:14: TS2304 Cannot find name 'Iterable'
我确实查找了更改日志并找到了:
现在需要
Iterable<T>,但必须提供类型定义Iterable<T>
的定义来正确编译Angular应用程序。Iterable<T>
。
我应该在此处使用什么作为Iterable定义?
编辑:
tsconfig.json
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
/* for reading your ts source while debugging from a browser */
"sourceMap": true,
/* the following two settings are required for angular2 annotations to work*/
"emitDecoratorMetadata": true,
"experimentalDecorators":true,
/* noImplicitAny when you want your typescript to be fully typed */
"noImplicitAny":false,
"suppressImplicitAnyIndexErrors":true,
"noFallthroughCasesInSwitch":true,
"noImplicitReturns":true,
"outDir": "./target/ts"
}
答案 0 :(得分:4)
根据更新日志中声明的migration,您应在es2015.iterable
内添加tsconfig.json
作为lib:
{
...,
"compilerOptions" : {
...,
"lib": ["es6", "dom", "es2015.iterable"]
}
}