我的代码中有错误。错误是这样的:v.context.$implicit 未定义
问题是,有时它出错,有时它没有...有人可以解释为什么会发生这种情况吗...
这是我的 html 代码:
<ng-container *ngFor="let time of item.timeInfo | keys" >
<ion-row *ngIf="time == thisDay">
<ion-col col-3 no-padding>
<ng-container *ngIf="checkTime(); else closeButton">
<button small ion-button block color="secondary" outline> OPEN </button>
</ng-container>
<ng-template #closeButton>
<button small ion-button block color="danger" outline>Close </button>
</ng-template>
</ion-col>
<ion-col col-9 >
{{ item.timeInfo[thisDay].open }} - {{ item.timeInfo[thisDay].close }}
</ion-col>
</ion-row>
</ng-container>
这是我的 json 代码:
"item":{
"timeInfo": {
"Sat": {
"open": "11:00",
"close": "21:00"
},
"Sun": {
"open": "9:00",
"close": "21:30"
},
"Mon": {
"open": "11:00",
"close": "22:30"
},
"Tue": {
"open": "12:00",
"close": "22:00"
},
"Web": {
"open": "12:00",
"close": "22:30"
},
"Thu": {
"open": "9:30",
"close": "22:30"
},
"Fri": {
"open": "12:30",
"close": "22:00"
}
},
};
这是我的版本:
@ionic/cli-utils : 1.15.2
ionic (Ionic CLI) : 3.15.2
local packages:
@ionic/app-scripts : 3.0.0
Ionic Framework : ionic-angular 3.7.1
System:
Node : v6.11.2
npm : 5.4.2
OS : Windows 8.1
Misc:
backend : pro
有人可以帮助我吗?Tyvm
如果我没有看到你是 TS 代码,我真的帮不上忙。我遇到了同样的问题,我的错误是尝试在像result[i] = data[i]
而不是像result.push(data[i])
这样的数组中插入一个新数据,这实际上是正确的。希望对您有所帮助!
情况下,context.$implicit
模板中引用使用"let"创建的变量(如"let time of item.info")。
其余的错误("未定义")是经典的javascript错误消息,用于尝试使用未定义的值(如对象)。
在您的情况下,当变量 thisDay
不是timeinfo
键之一时,可能会发生这种情况。 检查错误的确切行可能有助于在 HTML 中找到错误。
我有一个类似的问题,是这样解决的:是 - 成为
<button *ngIf="!readOnly && file.length">Remove</button> // error
<button *ngIf="!readOnly && (file && file.length)">Remove</button> //no error