使用'Angular-once'添加省略号(不允许{{bind 1} {{bind 2}})

时间:2015-11-11 19:38:35

标签: angularjs binding angular-once

我用 Angular once 替换巨大列表中的一些绑定。但是,我无法弄清楚如何用一次替换以下{{}}绑定:

我正在替换以下工作代码:

<div class="question">
    {{result.Question | limitTo: 175}}{{result.Question.length > 175 ? '...' : ''}}
</div>

这是我到目前为止所做的一切,我尝试的其他一切都失败了:

<div class="question">
    <p once-text="result.Question | limitTo: 175"></p>
</div>

问题:

使用Angular一次,如何在原生Angular中实现相同的并排绑定语句?

1 个答案:

答案 0 :(得分:1)

您可以按照以下方式编写过滤器以添加...,这样就可以达到limitTo的目的

moduleName.filter('addEllipsis', function() {
  return function(input, length) {
    length = length || 100; //default value for length
    return input.length > length ? input.substring(0, length) + "..." : input;
  };
});

现在您可以按如下方式使用它:

once-text="result.Question | addEllipsis" //with default length of 100

OR

once-text="result.Question | addEllipsis: 175" //with explicit length