Javascript Typescript找不到名称';IterableIterator';
我在typescript中的代码有问题 在tsc编译之后,我出现了一些错误,比如关于找不到一些名称Javascript Typescript找不到名称';IterableIterator';,javascript,typescript,Javascript,Typescript,我在typescript中的代码有问题 在tsc编译之后,我出现了一些错误,比如关于找不到一些名称 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): er
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());
类Fib实现IterableIterator{
受保护fn1=0;
受保护fn2=1;
构造函数(受保护的最大值?:数字){}
public next():IteratorResult{
无功电流=这1.fn1;
this.fn1=this.fn2;
this.fn2=电流+this.fn1;
如果(此.maxValue&¤t问题是tsc无法看到我的tsconfig.json,则在正确编译运行tsc-t ES6 app.ts代码之后。我解决了tsc-v 3.5.3
和@types/node
的相同问题(已测试es5和ES6)
npm安装@types/node--save--dev
并在tsconfig.json
"compilerOptions": {
"types": [
"./",
"node"
]
}
在这里查看完整的节点类型。您在编译选项中的目标是什么?它应该是ES6
我的目标是ES6:{“compilerOptions”:{“target”:“ES6”,“module”:“commonjs”,“sourceMap”:true}}我可以使用targetES6编译您的代码(使用tsc版本1.8.10
)。可能还有其他影响编译的因素()问题是TSC不能看到我的TSCONTS.JSON,在运行TSC-T ES6 App.ts代码被正确编译之后,考虑把你的最后一条评论写为A;过了一段时间,你也可以接受它,这样将来有类似问题的用户会从中受益。只要你想把一个ES6类型的文件编译成一个ES6 Javas。什么对我来说毫无意义。所以你可以把文件后缀.ts
改成.js
。如果这是正确的答案,我对此表示怀疑。