1 回答

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超6個(gè)贊
您遇到的問題在于 TypeScript 中的元組和列表類型之間的區(qū)別??紤]以下示例:
type AsTuple = [number];
type AsArray = number[];
let myArrayA: AsArray = [];
let myArrayB: AsTuple = []; // This one errors
為什么第二個(gè)錯(cuò)誤?這是因?yàn)锳sArray是一個(gè)數(shù)字?jǐn)?shù)組,而AsTuple是一個(gè)元組,其中元組中的第一個(gè)(也是唯一一個(gè))項(xiàng)目是一個(gè)數(shù)字??諗?shù)組不符合類型AsTuple;它必須是一個(gè)單項(xiàng)數(shù)組。
在您的示例中,您有:
myArray: [{
? ? id: number;
? ? item: string;
? ? checked: boolean;
}]
它定義myArray為一個(gè)元組類型——它可以有一個(gè)項(xiàng)目,這是一個(gè)對象。您可以通過將其設(shè)為數(shù)組類型來更正它:
myArray: {
? ? id: number;
? ? item: string;
? ? checked: boolean;
}[]
添加回答
舉報(bào)