報(bào)錯(cuò)Property 'className' does not exist on type 'EventTarget'.的一種解
(認(rèn)知有限,如有不妥,還望告知,歡迎討論。)
問題產(chǎn)生背景
在寫前端的過程中,我想要監(jiān)聽鼠標(biāo)在界面上的點(diǎn)擊,于是寫了下面的代碼
代碼運(yùn)行順利,但是在GitHub上的規(guī)范檢查中className這邊出現(xiàn)報(bào)錯(cuò)
Property 'className' does not exist on type 'EventTarget'.
解決方法
通過查閱[1]的資料發(fā)現(xiàn),由于EventTarget不是繼承自Element類型,所以typescript不能成功識(shí)別class和id這些屬性。
所以這里使用類型斷言將event.target的類型明確指明為Element即可
=END=
=reference=
[1]https://www.designcise.com/web/tutorial/how-to-fix-property-does-not-exist-on-type-eventtarget-typescript-error
[2]https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#type-assertions
標(biāo)簽: