我在学安格拉.我有一个带有变量的组件,它是一个对象.

<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>

有什么主意吗?

我还创建了一个管道,以获取打印值时可用的typeof,但不在*ngIf内

推荐答案

windowtypeof、枚举或静态方法这样的全局方法在模板中不可用.只有组件类和类型脚本语言构造的成员可用.

您可以向组件添加一个助手方法,如

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

并像这样使用它

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

Angular相关问答推荐

如何在自定义验证器中获取所有表单控件(字段组动态创建)

图像未显示在视图屏幕上-Angular 投影

如何使用带有17角的Swiper 11.0.5元素

Angular NG5002错误无效的ICU消息和意外字符EOF

如何将 Firebase 云消息传递 (FCM) 与 Angular 15 结合使用?

Angular6:RxJS switchMap 运算符未按预期工作

如何在本地处理错误并跳过 Angular HTTP 拦截器?

带有数据的 Angular 模板

Angular 服务decorator 提供在延迟加载的根效果

如何在Angular Material2中获取活动选项卡

如何在不刷新整页的情况下更新组件

如何处理解析器中的错误

Angular 7 测试:NullInjectorError:No provider for ActivatedRoute

在Angular 4中以'yyyy-MM-dd'格式获取当前日期

无法从模块it was neither declared nor imported导出服务

样式 html,来自 Web 组件的正文

Angular 2:formGroup 需要一个 FormGroup 实例

找不到@angular/common/http模块

如何在 Angular 中使用 router.navigateByUrl 和 router.navigate

Angular2:CoreModule 与 SharedModule