reactjs - TS2339 (TS) Egenskapen 'state' finns inte på typen


Jag hade mitt React-projekt fungerande fint med Visual Studio 2019 och TypeScript. Efter en månad utan kodning öppnar jag Visual Studio-lösningen och fick en avisering om att uppdatera TypeScript från 3.4 till 3.5. Och nu har jag plötsligt ett byggfel på denna.state-definition av komponenten.

länk

export default class Employee extends React.Component {
    constructor(props) {
        super(props)
        this.state = {
            user: null,
            loading: true
        }       
    }
}

Svar #1

Om du använder TypeScript behöver du ändra det till detta för att deklarera state-gränssnittet:

interface IState = {
  user: any;
  loading: boolean;
}

Sedan klassdeklarationen:

export default class Employee extends React.Component<any, IState> { }