微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 如何在Angular2中检查ngIf中的变量类型

我正在学习Angular2.我有一个具有变量的组件,它是一个对象.
我正在迭代对象的字段,并根据该位置的数据类型,我需要渲染不同的组合.
在这种情况下,我想要tu渲染该标签,如果该位置的类型是一个数字,这是如何不工作的
<div>
  <div *ngIf='obj'>
    <label *ngFor="let key of keys; let i = index">
      <label class='key'>{{key}}:</label>
      <label class='number' *ngIf='typeof obj[key] === "number"'>
      <!-- label class='number' *ngIf='obj[key] | typeof === "number"' -->
        {{ obj[key] }}
      </label>
    </label>
  </div>
</div>

有任何想法吗?

我还创建了一个管道,以获得其打印值时的工作类型,但不在* ngIf内

解决方法

像窗口,类型,枚举或静态方法这样的全局变量在模板中不可用.只有组件类和typescript语言结构的成员才可用.

你可以像你一样在你的组件中添加一个帮助器方法

isNumber(val) { return typeof val === 'number'; }

并使用它

<label class='number' *ngIf='isNumber(obj[key])'>

原文地址:https://www.jb51.cc/js/151320.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐