bla*_*rix 8 javascript typescript reactjs
我有一个界面如下:
interface orderItem {
symbol: string,
side: string,
price: number
quantity: number
}
Run Code Online (Sandbox Code Playgroud)
我想在我的构造函数中创建一个由“orderItems”组成的数组“orders”。
但是, orders : [orderItem] 似乎并没有做到这一点。有谁知道我该如何继续?
这是我在构造函数中尝试执行的操作:
this.state = {
orders: orderItem []
}
Run Code Online (Sandbox Code Playgroud)
由于您正在执行对象文字,因此冒号用于将键与值分开(即,它具有其正常的 javascript 含义,而不是其打字稿含义)。因此,尝试按照您的方式设置类型会导致错误。
有几种方法可以做你想做的事。您可以使用as关键字设置类型:
this.state = {
orders: undefined as orderItem[]
};
Run Code Online (Sandbox Code Playgroud)
或使用空数组:
this.state = {
orders: [] as orderItem[]
};
Run Code Online (Sandbox Code Playgroud)
或者你可以提前创建一些东西,然后将它插入到对象中:
let myOrders: orderItem[] = [];
this.state = {
orders: myOrders
};
Run Code Online (Sandbox Code Playgroud)
或者你可以有一个单独的状态接口并使用它:
interface myState {
orders: orderItem[]
}
class myClass {
private state: myState;
constructor () {
this.state = {
orders: undefined
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6081 次 |
| 最近记录: |