有这样的定义
class FruitProducer {
fruits: Fruit[] = [];
}
this.fruits[index] = {
alive: true,
x: this.position[aneId].x,
y: this.canvas.canvas.height - this.position[aneId].y,
size: 0,
type: Math.random() < 0.1 ? FruitType.Blue : FruitType.Orange,
speed: Math.random() * 0.040 + 0.010
};
Fruit中有方法,但我只想通过Json方式赋值一部分数据,但是编译器一直提醒我漏了赋值方法。
问,如何通过写json的方式创建Fruit对象(只赋值部分属性),而且编译器不会报错。
你申明了
fruits:Fruit
,那么必须传入Fruit
我不知道你的Fruit
是否是interface
在
JavaScript
或者Typescript
里面,那玩意应该叫Object
如果你希望使用
JSON
初始化,你可以在Fruit
构造函数这么写如果
Fruit
是interface
如果
Fruit
是class
也可以强制转换,但是这样会导致 无法调用其函数
正确的用法是使用构造函数
参考答案
How do I initialize a typescript object with a JSON object
typescript interface initialization