我在我的react应用程序中有这个代码,根据接口,变量items
应该是一个数组。
但是,在我的初始状态中,它被初始化为null
(因为我需要null
作为初始状态)。
在接口声明中我可以编写?Array
,但这意味着,键items
可能根本不处于状态 - 并且只要该键存在于对象中,它将是一个阵列。
有哪些选择?我的建筑不好吗?或者如何将所需变量声明为混合数组| null?
declare interface StateInterface {
items: Array
}
class MyComponent extends Component {
state: StateInterface = {
items: null
};
}
答案 0 :(得分:0)
您可以将其初始化为空数组:
class MyComponent extends Component<{}, StateInterface> {
constructor() {
this.state = { items: [] };
}
}