AngularJS根据表达式过滤动态应用

时间:2017-11-14 11:58:13

标签: javascript angularjs angular-filters

我有一个视图片段。 vm.items是一个对象,每个对象项都包含一个电子邮件或电话和相应的代码。例如{value:'123456', code: 'phone'}

.contacts
    .contact(ng-repeat='item in vm.items track by $index')
      span {{item | phone}}

问题是,只有当商品是手机时才能应用过滤器。这意味着项目的代码是phone,当它是电子邮件时,保持原样。我以为我可以使用三元运算符并且有类似的东西:span {{item | item.code === "phone"? phone : '' }},但我没有成功。 我无法更改手机过滤器代码并将任何参数传递给此过滤器。我无法为电子邮件创建新的过滤器。

1 个答案:

答案 0 :(得分:2)

我会这样做:

{{ item.code === "phone" ? (item | phone) : item }}