繁体   English   中英

TypeScript 中解构赋值的语法错误

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM