当我将参与设置为空数组时,收到此错误。我尝试了所有方法来解决此问题。
未被捕获的(在承诺中):TypeError:无法设置未定义(设置“inPackage”)的属性TypeError:无法设置未定义的属性(设置“inPackage”)
型号
export class BusinessPayload implements Business {
_id?: string;
business?: {
inPackage: string[];
status: string;
};
description: string;
}
businessPayload: BusinessPayload = null;
ngOnInit() {
this.businessPayload.business.inPackage = [];
}
2条答案
按热度按时间w6lpcovy1#
您正在将
this.businessPayload
设置为null。当您将其设置为null时,它将不再是一个对象,因此将没有键。在您的init函数中,您试图访问this.businessPayload
上的business
,该值为null。这将引发错误,因为没有要查找的内容。一个解决方案是在init函数中编写如下代码:
1szpjjfi2#
这是因为业务属性是可选的,所以typescript认为它可能是不确定的
我想不如就把它改成这样: