reactjs - Idiomatisk användning av React Context API med TypeScripts strikta initialisering


Jag försöker konvertera en redan fungerande React-applikation, så att den följer TypeScripts strikta regler, och fastnade lite med Context API. Det vanliga sättet att använda det är som följer:

// context type and producer are defined in one place for the whole project
import GlobalContext from '../context/GlobalContext';

class MyComponent extends React.Component {
    public context: React.ContextType<typeof GlobalContext>;
    // other component logic
}
MyComponent.contextType = GlobalContext;

Men med strikt klassinitialisering visar TypeScript ett fel och säger att context-egenskapen inte är initialiserad i konstruktorn - och det är den verkligen inte, eftersom den kommer att initialiseras av React.

För tillfället kan jag använda den bestämda tilldelningspåståendet för att "fixa" detta:

public context!: React.ContextType<typeof GlobalContext>;

Men finns det någon mer idiomatisk lösning?