【发布时间】:2020-07-28 20:05:58
【问题描述】:
我可以毫无问题地将数组作为函数/构造函数参数传播:(test.js)
class Person {
name;
age;
constructor(name, age) {
this.name = name;
this.age = age;
}
}
let a = ['Claire', 8];
let p = new Person(...a);
console.log(p);
但是,同样的事情在 TypeScript 中不起作用:(test.ts)
class Person {
constructor(
public name: string,
public age: number
) {}
}
let a = ['Claire', 8];
let p = new Person(...a); // Error: An argument for 'name' was not provided.
console.log(p);
这是 TypeScript 中的错误吗?它无法弄清楚如何在这里使用传播语法。是否有解决方法或者我必须手动分配每个单独的参数?
【问题讨论】:
标签: javascript arrays typescript spread-syntax