如何给对象中的数组赋值

我正在尝试将数组复制到对象中的数组中。我收到这个错误

Type 'any[]' is not assignable to type '[]'. 
 Target allows only 0 element(s) but source may have more.

我的对象是

newForm: {formName: string, formId: string, formAttributes:[], formResponses:[]};

我正在复制这个数组-

formAttributeValues=["firstname", "lastname"]

如下:

this.newForm.formAttributes= [...this.formAttributeValues];

这是行不通的。我该如何解决这个问题?


陪伴而非守候
浏览 80回答 1
1回答

缥缈止盈

这是因为您在使用打字稿时必须给出正确的类型。这里formAttributes应该是string[]类型。请参考下面的代码更清楚的理解// newForm object type definitionlet newForm: {formName: string, formId: string, formAttributes:string[], formResponses:[]};// Assigning values to newFormnewForm = {formName: "", formId: "", formAttributes:[], formResponses:[]};let formAttributeValues=["firstname", "lastname"]newForm.formAttributes= [...formAttributeValues]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript