我在Angular中创建ngIf语句时遇到了问题。我试图只在div匹配特定条件时才显示它......但我在浏览器控制台中一直得到这个错误:
无法读取未定义的属性(阅读“0”)
我做错了什么?
我的HTML是:
<div *ngIf="preSelectedPaymentOption[0].value === 3 && totalCartPrice > 380" class="payment-warning">
<ion-label>
<h3>Atention!</h3>
<p>Lorem ipsum dolor sit!!!.</p>
</ion-label>
</div>
下面是来自API的数据:
下面是我如何获取数据的TS代码:
getPaymentOptions() {
this.cartService.getPaymenyOptions().subscribe(
data => {
this.paymentData = data;
this.preSelectedPaymentOption = this.paymentData.payments.filter(option => option.default === 1);
console.log('Preselected payment method: ', this.preSelectedPaymentOption.map(option => option));
}, error => {
console.log('Error', error);
});
}
1条答案
按热度按时间lmyy7pcs1#
您的
preSelectedPaymentOption
可能在开始时未定义,因此将条件更改为following应该可以解决此问题