gpt4 book ai didi

javascript - 当ng-repeat在angularjs中发现null或undefined时设置一个默认值

转载 作者:行者123 更新时间:2023-11-30 07:38:23 25 4
gpt4 key购买 nike

我是 AngularJS 的新手,我试图让我的 ng-repeat 在发现 null 时设置默认值。我尝试了在另一个 SO 页面上找到的解决方案,

<div class="col-sm-12" ng-repeat="data in dataNames">
{{data.name || '<b>NONE</b>'}}
</div>

但是,当我在 NONE 文本中添加时,它只是将整行显示为纯文本,并且看起来 Angular 没有评估它。

更新

我正在尝试调用此过滤器并使用 $sce 允许我返回 html。这是过滤器

require(["app", "angular"], function(app, angular) {
app.filter("default", function ($sce) {
return function (input, def) {
return $sce.trustAsHtml(!!input ? input : '<b>' + def + '</b>');
};
});
});

我是这样调用它的

{{ name | default: 'NONE' }}

它正在正确调用函数并进行评估,但它会将 b 标记显示为纯文本而不是 html。我可能没有正确使用 $sce 吗?

最佳答案

这相当于您的第一次尝试。 ng-if 仅在名称为 null 或未定义时生成 b 标记。

<div class="col-sm-12" ng-repeat="data in dataNames">
{{data.name}}<b ng-if="!data.name">NONE</b>
</div>

这是一个演示:http://plnkr.co/edit/heRkCMvuqCHbyJhgpV4p?p=preview

关于javascript - 当ng-repeat在angularjs中发现null或undefined时设置一个默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24375551/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com