TS2339: свойство не существует для типа {} при расширении класса (из Antd) - PullRequest
1 голос
/ 18 октября 2019

Я довольно новичок в Typescript, но мне нужно отладить чужой код. Речь идет о компоненте в components\ViewTable.tsx, который работал ранее, до обновления пакетов TS / JS. Он содержит следующий код

\\ Lines 8-9
import { Table } from "antd";
const { Column, ColumnGroup } = Table;
\\ Line 52
class MyTable extends Table<Interfaces.ViewEntry>;
\\ ...
export class ViewTable extends React.Component<ViewTableProps, ViewTableState> {
   render() {
        return (
            <div>
                <div className="view-table">
\\ Line 97ff
                    <MyTable size="small" dataSource={this.props.viewData}
                        rowKey={(record) => (record.GeneralLedgerId).toString()}
                        locale={{ emptyText: 'No applicable view data found' }}
                        pagination={false}>
\\ ... 

Это раньше работало, но после обновления до самых последних версий React (-Dom) (обе версии 16.10.2), Antd (версия 3.24.0),Машинопись (версия 3.6.4), я получаю много ошибок:

Ошибка TS2459 (TS) Тип 'ComponentClass, "загрузка" |"нижний колонтитул" |"стиль" |"название" |"свиток" |"размер" |"дети" |"className" |"prefixCls" |"язык" |"getPopupContainer" |"onChange" |"источник данных" |... еще 27 ... |"sortDirections">, any> 'не имеет свойства ColumnGroup и не имеет подписи строкового индекса. 9
Ошибка TS2459 (TS) Тип 'ComponentClass, "загрузка" |"нижний колонтитул" |"стиль" |"название" |"свиток" |"размер" |"дети" |"className" |"prefixCls" |"язык" |"getPopupContainer" |"onChange" |"источник данных" |... еще 27 ... |"sortDirections">, any> 'не имеет свойства' Column 'и не имеет подписи индекса строки. 9
Ошибка TS1005 (TS) '(' ожидается. 52
Ошибка TS2348 (TS) Значение типа 'ComponentClass, "loading" | "footer" | "style" | "title" | "scroll" | "size "|" children "|" className "|" prefixCls "|" locale "|" getPopupContainer "|" onChange "|" dataSource "| ... еще 27 ... |" sortDirections ">, любое> 'не являетсяМожно ли включить «new»? 52
Ошибка TS2339 (TS) Свойство «size» не существует для типа «{}». 97
Ошибка TS2607 (TS) Класс элемента JSX не поддерживает атрибутыпотому что у него нет свойства 'props'. 97
Ошибка TS2605 (TS) Тип элемента JSX 'MyTable' не является функцией конструктора для элементов JSX. Свойство 'render' отсутствует в типе 'MyTable'. 97

Чтение документации и поиск в Интернете с различными поисковыми терминами не помогли. Можете ли вы быть так добры и дать мне подсказку, что происходит?

Некоторые мысли

Чтобы выровнять типы реагирования с типами ant.design, см. https://ant.design/docs/react/use-in-typescript, но я былне слишком успешный.

Ссылки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...