av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

javascript - TypeScript用接口如何描述數組的問題

瀏覽:91日期:2023-04-14 13:22:44

問題描述

interface Squares { squares: (null | string)[]}interface History { [index: number]: Squares}interface State { history: History stepNumber: number xIsNext: Boolean}class Game extends React.Component { state: State constructor() { super() this.state = { history: [{squares: Array(9).fill(null) }], stepNumber: 0, xIsNext: true } } handleClick(i: number) { const history = this.state.history.slice(0, this.state.stepNumber + 1) }

以上代碼為項目代碼的一部分,項目使用React+TypeScript開發,上面的代碼在vscode中提示錯誤:Property ’slice’ does not exist on type ’History’.。

slice是數組方法,如果換成類似let a: string[] = [’Hello’]這種方式則slice方法可以正常使用不會報錯。

題主目前是還是TypeScript初學者,想問一下各位:

這種問題產生的原因是什么

類似this.state這種結構的數據應該怎么用interface描述(主要是history這個數組怎么描述)

問題解答

回答1:

原因就是接口沒有正確繼承數組接口,導致數組的slice方法定義丟失

改成下面這樣

interface History extends Array<Squares>{}

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 亚洲视频免费在线观看 | 国产高清视频在线观看播放 | 亚洲一区二区久久 | 日本在线网址 | 综合久久av| 亚洲成人免费电影 | 国产一区91精品张津瑜 | 亚洲成人一区二区在线 | 美国一级片在线观看 | 欧美一级在线 | 毛片免费观看视频 | 久久精品99| 热re99久久精品国产99热 | 中文字幕成人在线 | 久久综合一区二区 | 国产精品一区二区在线播放 | 国产一级成人 | 欧美h版| 在线观看中文字幕av | 亚洲在线一区 | 7799精品视频天天看 | 男女网站在线观看 | 亚洲免费网站 | 黄网站免费在线看 | www国产亚洲精品久久网站 | 青青久久久 | 久久久91精品国产一区二区三区 | 成在线人视频免费视频 | 正在播放国产精品 | 青青草一区二区 | 伊人网99| 偷拍自拍网站 | 久久精品99国产精品日本 | 久久久久久成人 | 国产精品不卡一区 | 久久大陆| 精品日韩| 亚洲国产成人久久久 | 亚洲一区二区在线播放 | 日韩欧美成人精品 | 奇米久久 |