next.js 类型“typeof import(“...”)“不满足约束”IEntry“

c3frrgcw  于 2023-01-02  发布在  其他
关注(0)|答案(1)|浏览(146)

当我使用npm run build构建NextJS 13应用时,收到以下类型错误:

Type error: Type 'typeof import("E:/myapp/app/login/page")' does not satisfy the constraint 'IEntry'.
  Types of property 'default' are incompatible.
    Type 'typeof Login' is not assignable to type 'PageComponent'.
      Type 'typeof Login' provides no match for the signature '(props: PageProps): ReactNode | Promise<ReactNode>'.

下面是上面提到的Login类的简化定义:

class Login extends React.Component<{}, {data: any}>{

    constructor(props: any){
        super(props);
        this.state = {
            data: null;
        }
    }

    componentDidMount(){
        //some logic
    }

    render(){
        return <h1>Hello World</h1>
    }
}

有人能帮助我理解为什么我会收到这个错误吗?

r7xajy2e

r7xajy2e1#

我建议采取以下方法:

constructor<T extends PageProps>(props: T){
    super(props);
    this.state = {
        data: null;
    }
}

我想超类的构造函数需要PageProps类型的参数。

相关问题