Angularjs 带有HTML元素的三元语句

Angularjs 带有HTML元素的三元语句,angularjs,Angularjs,我试图创建一个三元语句,它也使用HTML元素: {{vm.showDetails ? <span>asd</span> : <span>red</span> }} 如果我删除标记,那么三元语句就可以正常工作,难道不能在三元语句中使用HTML元素吗?要呈现这样的HTML元素,在某些情况下,您可能需要一个带有$compile的指令(因为它们负责DOM操作),或者使用hack-ng bind HTML,从ngSanitize模块 以下是一个例子: v

我试图创建一个三元语句,它也使用HTML元素:

{{vm.showDetails ? <span>asd</span> : <span>red</span> }}

如果我删除标记,那么三元语句就可以正常工作,难道不能在三元语句中使用HTML元素吗?

要呈现这样的HTML元素,在某些情况下,您可能需要一个带有
$compile
的指令(因为它们负责DOM操作),或者使用hack-
ng bind HTML
,从
ngSanitize
模块

以下是一个例子:

var-app=angular.module('myApp',[“ngSanitize”]);
应用程序控制器('myCtrl',函数($scope){
var vm=这个;
vm.showDetails=true;
});
/*用于其他不安全HTML元素的有用过滤器*/
app.filter('trustAsHtml',函数($sce){
返回$sce.trustAsHtml;
});

vm.showDetails


结果总是一个span,为什么不:
{{{vm.showDetails?'asd':'red'}}
?这是一个示例情况。我想显示不同的图标。但这也应该符合你的建议。我觉得这样更好。
{{vm.showDetails ? 'asd' : 'red'}}