Javascript 角度应用程序数据绑定与未定义的子对象elvis运算符或自定义接口?
我在一个大型angular 6应用程序中工作,最近我们的API出现了数据完整性问题,这破坏了我们的网站 我们正在进行以下数据绑定: {{parent.child1.child2} api返回的是父对象,而不是child1或child2。所以这破坏了我们的网站 我很好奇处理这个问题的最佳实践是什么 一种解决方案是使用elvis运算符:{{parent?.child1?.child2} 另一个是创建一个接口,并为API的响应使用一些自定义验证器Javascript 角度应用程序数据绑定与未定义的子对象elvis运算符或自定义接口?,javascript,typescript,angular6,Javascript,Typescript,Angular6,我在一个大型angular 6应用程序中工作,最近我们的API出现了数据完整性问题,这破坏了我们的网站 我们正在进行以下数据绑定: {{parent.child1.child2} api返回的是父对象,而不是child1或child2。所以这破坏了我们的网站 我很好奇处理这个问题的最佳实践是什么 一种解决方案是使用elvis运算符:{{parent?.child1?.child2} 另一个是创建一个接口,并为API的响应使用一些自定义验证器 任何指导都将不胜感激。您也可以使用&&操作符来实现这一
任何指导都将不胜感激。您也可以使用
&&
操作符来实现这一点
例如,您可以使用表达式{{parent&&parent.child1&&parent.child1.child2}
。
如果
parent
和parent.child1
都是真实的,并且对象都是真实的,那么它将返回parent.child1.child2
,因此它在您的情况下可以正常工作。您也可以使用&
操作符来实现这一点
例如,您可以使用表达式{{parent&&parent.child1&&parent.child1.child2}
。
如果parent
和parent.child1
都是truthy,并且对象都是truthy,那么它将返回parent.child1.child2
,因此在您的情况下可以正常工作