as HTMLTableElement).parentNode!.rowIndex
Выдает ошибку: Property 'rowIndex' does not exist on type 'Node & ParentNode'.
Как сделать, чтобы rowIndex идентифицировало как цифру или по крайней мере не было без ошибки выше?
в общем, я пришел к двум дорогам: 1) (e.target.parentNode as HTMLTableRowElement).rowIndex Error: TS2339: Property 'parentNode' does not exist on type 'EventTarget' 2) (e.target as HTMLTableRowElement).parentNode!.rowIndex Error TS2339: Property 'rowIndex' does not exist on type 'Node & ParentNode' Ни первую, ни вторую ошибку я решить не могу
смотри. во втором кейсе сделай еще одну обертку для ParentNode, сейчас скину как. когда-то помогал с этим
Я пробовал выдает ошибку TS2304: Cannot find name 'parentNode'. Может я как-то неверно в обертку беру. Буду ждать пример) Спасибо!
https://stackoverflow.com/questions/60554808/react-useref-with-typescript-and-functional-component вот по такому принципу, то есть укажи тип ParentNode как твой кастомный написанный интерфейс по типу interface ParentNodeObject { rowIndex: number } и дальше ((e.target as HTMLTableRowElement).parentNode as ParentNodeObject)!.rowIndex
Проблема в том, что у меня это свойство уже протипизировано: setTableInteractive({ active: true, activeCellIndex: (e.target as HTMLTableCellElement).cellIndex, offsetLeft: (e.target as HTMLTableElement).offsetLeft, offsetTop: (e.target as HTMLTableElement).offsetTop, activeRowIndex: (e.target as HTMLTableElement).parentNode!.rowIndex, }); Весь этот объект уже протипизирован и в других свойствах никаких ошибок. Как только начинается чейнинг как, например, в моем проблемном свойстве, то начинаются "приколы"
большая разница в том, что ты тут получаешь обьект parentNode, а в остальных случаях ты обращаешься к полям e.target). Проблема в том, что TypeScript - это типизация и он не может, без указания типа, обратиться к полю обьекта. ты можешь написать также as any, что тебе дать такой же результат, что и я описал.
Спасибо большое, я неверно оборачивал: Вот итог: activeRowIndex: ((e.target as HTMLTableElement).parentNode! as HTMLTableRowElement).rowIndex,
вот примерно про это я и говорил 🙂 отлично!
фууух, спасибо тебе, добрый человек!!! У меня две вкладки ггугла были поностью прочитаны. Нигде неу примеров как правильно обернуть при чейнинге. Огромнейшее спасибо!
Обсуждают сегодня