如何使用TypeScript将默认prop分配给React类组件?

时间:2020-10-15 16:36:39

标签: reactjs typescript

给出以下接口:


import { A, B } from '../..';

export interface C extends A {
    D: E;
}

export interface E extends B {
    X: Array<number>;
    Y: Array<string>;
    Z?: boolean; // this needs to default to false
}

我需要属性Z默认为false。我有两个问题:

  1. 我不确定分配默认值时用于访问属性的语法。

到目前为止,我看着docs

    public static defaultProps: Pick<E, 'Z'> = {
        Z: false,
    };

但键入不正确。

  1. 短毛绒引发错误:

'defaultProps'应该在类主体之外声明。

但是当我将其移出类时,它当然会引发错误,因为它不在类主体上:

解析错误:需要声明或声明

如何为该道具分配默认值false

这是我的组成部分:

class MyComponent extends BaseComponent<C, S> {
    static defaultProps: { Z: false }

    componentDidMount(): void {
        // do something
    }

    render(): ReactElement {
        return <></>;
    }
}

export default MyComponent;

0 个答案:

没有答案