看起来像你的类型参数 UserContext 有点不对劲。你需要删除 typeof 。
UserContext
typeof
所以 React.createContext<{ name: string }> 代替 React.createContext<typeof { name: string }>
React.createContext<{ name: string }>
React.createContext<typeof { name: string }>
这对我有用:
import * as React from 'react'; const UserContext = React.createContext<{ name: string }>({ name: 'test' }); export class MainPage extends React.Component<undefined, undefined> { static contextType = UserContext; context!: React.ContextType<typeof UserContext>; public render() { return <div>{this.context.name}</div>; } }