typescript + react - 状态中的混合变量

时间:2018-04-02 11:15:12

标签: javascript reactjs typescript types ecmascript-6

我在我的react应用程序中有这个代码,根据接口,变量items应该是一个数组。 但是,在我的初始状态中,它被初始化为null(因为我需要null作为初始状态)。

在接口声明中我可以编写?Array,但这意味着,键items可能根本不处于状态 - 并且只要该键存在于对象中,它将是一个阵列。

有哪些选择?我的建筑不好吗?或者如何将所需变量声明为混合数组| null?

declare interface StateInterface {
    items: Array
}


class MyComponent extends Component {
    state: StateInterface = {
        items: null
    };
}

1 个答案:

答案 0 :(得分:0)

您可以将其初始化为空数组:

  class MyComponent extends Component<{}, StateInterface> {
    constructor() {
     this.state = { items: [] };
    }
 }