如何在html-angularjs上使用JSON数据应用三元运算符
我有一个JSON数据,类似于:如何在html-angularjs上使用JSON数据应用三元运算符,angularjs,Angularjs,我有一个JSON数据,类似于: $scope.user = { is_session_id: true, session_id: 'asdasdadssa', email : 'abc@gmail.com' } 现在,我想分配session\u idwhen'is\u session\u by'为true,而emailwhenis\u session\u by为false\null。该值将分配给div的id <div id="{{ user.is_s
$scope.user = {
is_session_id: true,
session_id: 'asdasdadssa',
email : 'abc@gmail.com'
}
现在,我想分配
session\u id
when'is\u session\u by'为true,而email
whenis\u session\u by
为false\null。该值将分配给div的id
<div id="{{ user.is_session_id}} ? {{ user.session_id }} : {{ user.email }} " ></div>
我犯了一些愚蠢的错误。请帮忙
当通过“检查元素”检查时,其显示如下:
某物
您可以使用解析表达式的ng attr id
:
<div ng-attr-id="{{ user.is_session_id ? user.session_id : user.email }} " ></div>
您可以使用解析表达式的
ng attr id
:
<div ng-attr-id="{{ user.is_session_id ? user.session_id : user.email }} " ></div>
这是您需要的代码
<div ng-attr-id="{{ user.is_session_by ? user.session_id : user.email }}" ></div>
这是您需要的代码
<div ng-attr-id="{{ user.is_session_by ? user.session_id : user.email }}" ></div>
使用
ng attr id
t根据条件分配id
<div ng-attr-id="{{ user.is_session_id ? user.session_id : user.email }} " ></div>
使用
ng attr id
t根据条件分配id
<div ng-attr-id="{{ user.is_session_id ? user.session_id : user.email }} " ></div>
这很简单,建议您解决问题
<div ng-attr-id="{{ user.session_id || user.email }} " ></div>
不需要额外的变量用户。isSession_id这很简单,建议您解决问题
<div ng-attr-id="{{ user.session_id || user.email }} " ></div>
不需要额外的变量用户。isSession_id如果有简单的用户,为什么需要这种方式 在控制器中:
var user = {
is_session_by: true,
session_id: 'asdasdadssa',
email : 'abc@gmail.com'
}
$scope.result = user.is_session_by ? user.session_id : user.email
在html中:
<div id="{{result}}" >{{result}}</div>
{{result}
如果有简单的方法,为什么需要这种方法
在控制器中:
var user = {
is_session_by: true,
session_id: 'asdasdadssa',
email : 'abc@gmail.com'
}
$scope.result = user.is_session_by ? user.session_id : user.email
在html中:
<div id="{{result}}" >{{result}}</div>
{{result}
is\u session\u by
与is\u session\u id
不一样,不要使用三个胡须{}
。将整个表达式括在一组双花括号中{{}
。请参阅。is_session_by
与is_session_id
不一样。不要使用三个胡须{}
。将整个表达式括在一组双花括号中{{}
。请参阅。我认为,当ng attr id本身可以解析表达式时,没有必要在$scope中添加额外属性。这不是关于添加额外属性。更多的是关于代码可读性、可维护性和可测试性。@AkashKC无论如何,您可以通过{{}来评估它,这将需要编译时间和相同的内存。请发表评论。@RIYAZ:我还没有对你的帖子投过反对票。作为评论,我更喜欢html本身的三元检查,而不是在$scope中添加新属性。因为$scope中定义的每个字段都有摘要循环,这使得对$scope中的那些属性进行脏检查成为可能。我不想对可以在html指令中轻松计算为表达式的属性进行任何脏检查。我认为,当ng attr id本身可以解析表达式时,不需要在$scope中添加额外属性。这不是关于添加额外属性。更多的是关于代码可读性、可维护性和可测试性。@AkashKC,你通过{{}对它进行评估,这需要编译时间和相同的内存。请发表评论。@RIYAZ:我还没有对你的帖子进行投票。作为评论,我更喜欢html本身的三元检查,而不是在$scope中添加新属性。因为$scope中定义的每个字段都有摘要循环,这使得对$scope中的那些属性进行脏检查成为可能。我不想对属性进行任何肮脏的检查,这些属性可以很容易地作为html指令中的表达式进行计算。