[英]Syntax Error on Destructuring Assignment in TypeScript
interface User extends Function {
player: number,
units: number[],
sites: string[],
}
class User extends Function {
constructor() {
super('return this.player')
[this.player, this.units, this.sites] = getBelongings(); // Destructuring Assignment
}
}
const me = new User();
function getBelongings(): [number, number[], string[]] {
return [1, [1], ['1']]
}
以上看起来不错,我认为我的作业没有问题。
但它说: Type 'string[]' cannot be used as an index type.(2538)
我之前尝试过几次解构,现在不知道出了什么问题。
是 TypeScript 问题还是语法错误? 我怎样才能让它运作良好? 非常感谢。
在调用 super 之后需要一个分号,或者它试图同时运行两个语句。
就目前而言,代码读取为 super 的返回值的索引访问器,而不是新语句。
super('return this.player'); // <-- insert semi colon
[this.player, this.units, this.sites] = getBelongings();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.