我在游戏中工作,我希望有一个类型为Item(我自己的类)的属性,它从null开始,并在玩家拿起一个项目时设置。 我有代码:
useItem: Item;
在播放器类的顶部声明,并在其构造函数中声明:
this.useItem = null;
因为除非有项目,否则我希望它为空(这样我就什么都不知道了)
并且在Item类中我有:
init(holder: Player) {
this.holder.useItem = this;
}
当玩家拿起一个项目时已经调用(该游戏已在游戏中早期创建) 但每次我运行此代码我都会收到错误 未捕获的TypeError:无法设置属性' useItem'未定义的
我能做什么?
答案 0 :(得分:2)
您尝试访问useItem
的{{1}}成员,但this.holder
尚未初始化。在尝试使用其this.holder
成员之前初始化this.holder
。