我在tsc编译后,我在typescript中的代码有问题,我有关于找不到一些名字的错误。
app.ts(1,22): error TS2304: Cannot find name 'IterableIterator'.
app.ts(8,20): error TS2304: Cannot find name 'IteratorResult'.
app.ts(26,6): error TS2304: Cannot find name 'Symbol'.
app.ts(26,26): error TS2304: Cannot find name 'IterableIterator'.我的代码是:
class Fib implements IterableIterator<number> {
protected fn1 = 0;
protected fn2 = 1;
constructor(protected maxValue?: number) {}
public next(): IteratorResult<number> {
var current = this.fn1;
this.fn1 = this.fn2;
this.fn2 = current + this.fn1;
if (this.maxValue && current <= this.maxValue) {
return {
done: false,
value: current
}
}
return {
done: true
}
}
[Symbol.iterator](): IterableIterator<number> {
eturn this;
}
}
fib = new Fib();
console.log(fib.next());tsc版本为2.1.0-dev.20160716
发布于 2019-07-21 12:47:15
我用tsc -v 3.5.3和@types/node (测试过的es5和es6)解决了同样的问题。
npm install @types/node --save--dev
并在tsconfig.json中添加"node"
"compilerOptions": {
"types": [
"./",
"node"
]
}请看这里的DefinitelyTyped,了解完整的节点类型。
https://stackoverflow.com/questions/38420846
复制相似问题