午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

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

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

瀏覽:176日期: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
相關文章:
主站蜘蛛池模板: 欧美日韩精品一区二区三区四区 | 日本特黄一级 | 成年人在线播放视频 | 日韩1024| 无套白嫩进入乌克兰美女 | 青草99 | 日韩av午夜 | a视频在线播放 | www性欧美| 日韩精品一区二区三区在线播放 | 热热热热色 | 日日日干干干 | 日韩视频免费在线 | 久久精品亚洲精品 | 黄色小毛片| 日韩高清在线观看 | 欧美日韩第一页 | 国产精品96久久久久久 | 91香蕉视频在线看 | 免费视频成人 | 久草超碰 | 国产影视一区二区 | 成年人免费网站在线观看 | 久久最新视频 | 九九热伊人 | 免费在线性爱视频 | 成人欧美一区二区三区在线观看 | 日韩在线精品视频 | 日韩欧美三级 | 国产精品美女久久久久av爽 | 狠狠操91| 成人午夜av | 97国产视频| 亚洲成人a∨ | www欧美 | 青草伊人久久 | 欧美午夜精品一区二区 | 99热这里只有精品首页 | www日韩精品| 日韩精品久久久久久久 | 免费av网址在线观看 |