Javascript 显示一个或另一个值,具体取决于它是否为';现在
我有以下数组:Javascript 显示一个或另一个值,具体取决于它是否为';现在,javascript,html,angularjs,Javascript,Html,Angularjs,我有以下数组: vm.persons = [{id:1, name:'Manuel1', age:30}, {id:2, name:'Manuel2', errorCode:'Error', age:18}] 我想通过这种方式展示: ------------------ |Name | Age | ------------------ |Manuel2 | Error | ------------------ |Manuel1 | 30 | ------------------
vm.persons = [{id:1, name:'Manuel1', age:30}, {id:2, name:'Manuel2', errorCode:'Error', age:18}]
我想通过这种方式展示:
------------------
|Name | Age |
------------------
|Manuel2 | Error |
------------------
|Manuel1 | 30 |
------------------
因此,如果存在errorCode
,则不应显示年龄
这就是我现在拥有的:
<tr ng-repeat="person in persons" ng-class="...">
<td>{{::person.name}}</td>
<td>{{::person.age}}</td>
</tr>
{{::person.name}
{{::person.age}
我怎么能做那张支票呢。首先,我想让大家看看有错误的人,然后是其他人。我认为您可以使用array.sort来实现这一点,对吗?我使用如下指令来实现这一点:
{{::person.name}
{{::person.age}
ng如果计算表达式,如果为true,则显示元素。。。您可以执行类似于ng if=“person.errorCode!=“Error”
或ng if=“!person.errorCode”
的操作,您必须检查符合您需要的真假表达式
{{::person.name}
{{person.age=='Error'?'-':::person.age}
如果不想显示年龄,则需要显示一些文本,否则如果未找到则设计将运行。您应该能够使用?:三元运算符,该运算符充当简单的if/then like表达式。这将评估第一个术语(在?)之前。如果计算结果为true,则?他回来了。如果计算结果为false,则返回:之后的表达式
所以
{{::(person.errorCode?person.errorCode:person.age)}
应该可以工作,尽管我还没有测试过它。如果要打印或不打印col和colspan,请使用ng以防出现空白
<tr ng-repeat="person in persons" ng-class="...">
<td colspan="{{!person.errorCode ? '1' : '2'}}">{{::person.name}}</td>
<td ng-if="!person.errorCode" >{{::person.age}}</td>
</tr>
{{::person.name}
{{::person.age}
试试这个-
<tr ng-repeat="person in persons" ng-class="...">
<td>{{person.name}}</td>
<td ng-if="!person.errorCode">{{person.age}}</td>
<td ng-if="person.errorCode">{{person.errorCode}}</td>
</tr>
{{person.name}
{{person.age}
{{person.errorCode}
使用此代码使其正常工作
<tr ng-repeat="person in persons" ng-class="...">
<td>{{person.name}}</td>
<td>{{person.errorcode==""?person.age:person.errorcode}}</td>
</tr>
{{person.name}
{{person.errorcode==“”?person.age:person.errorcode}
有关订购,请查看
如果元素已定义,则可以定义一个返回1
的自定义函数,如果未定义,则返回0
条件显示已在多个答案中解释。
<tr ng-repeat="person in persons | orderBy:'errorCode'" ng-class="...">
<td>{{::person.name}}</td>
<td>{{::(!person.errorCode) ? person.age : 'Error'}}</td>
</tr>
{{::person.name}
{{::(!person.errorCode)?person.age:'Error'}
使用ng show ng hide阅读此内容见谢谢!回答得很好。
<tr ng-repeat="person in persons | orderBy:'errorCode'" ng-class="...">
<td>{{::person.name}}</td>
<td>{{::(!person.errorCode) ? person.age : 'Error'}}</td>
</tr>