Когда я выполняю поиск по этой проблеме, я могу найти только те вопросы, которые изменяют this.state
прямо где-то в this.state
метода, а не используя this.setState()
. Моя проблема в том, что я хочу установить начальное состояние в конструкторе следующим образом:
export default class Square extends React.Component<any, any> {
constructor(props: any) {
super(props);
this.state = {
active: false
};
}
public render() {
...
}
}
Приложение не может начать со следующей ошибки компиляции:
Cannot assign to 'state' because it is a constant or a read-only property
И это потому, что в определении React.Component
мы имеем:
readonly state: null | Readonly<S>;
Поэтому я не знаю, как это сделать. Официальное учебное пособие по JS прямо присваивает this.state
и говорит, что это приемлемый шаблон для этого в конструкторе, но я не могу понять, как это сделать с помощью TypeScript.