【问题标题】:Ionic Error v.context.$implicit is undefined离子错误 v.context.$implicit 未定义
【发布时间】:2018-04-11 00:33:39
【问题描述】:

我的代码中有错误。 错误是这样说的: 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

有人可以帮助我吗? 特维姆

【问题讨论】:

  • 就我而言,它是集合中未定义的项目。

标签: json typescript ionic-framework ionic2 implicit


【解决方案1】:

如果我看不到你是 TS 代码,我真的无能为力。 我也遇到了同样的问题,我的错误是尝试在result[i] = data[i] 之类的数组中插入一个新数据,而不是result.push(data[i]) 这实际上是正确的。希望能帮助到你 !

【讨论】:

  • 我遇到了类似的问题,因为我试图对一个为空的数组进行操作,而没有先检查它。
【解决方案2】:

大多数时候,context.$implicit 在模板中引用使用“let”创建的变量(如“let time of item.info”)。

错误的其余部分(“未定义”)是经典的 javascript 错误消息,用于尝试使用对象等未定义的值。

在您的情况下,当变量thisDay 不是timeinfo 的键之一时,可能会发生这种情况。检查错误的确切行可能有助于在 html 中找到错误。

【讨论】:

    猜你喜欢
    • 2017-09-16
    • 2017-12-10
    • 2018-10-08
    • 1970-01-01
    • 1970-01-01
    • 2022-11-07
    • 2019-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多