角度过滤器和ng-bind-html

时间:2016-06-23 13:23:07

标签: javascript angularjs

我有一个角度过滤器来限制字符串输出上的字符:

mod.filter('strLimit', ['$filter', function ($filter) {
  return function (input, limit) {
   if (!input) return;
   if (input.length <= limit) {
     return input;
   }

   return $filter('limitTo')(input, limit) + '...';
  };
}]);

但是当我将它与ng-bind-html结合使用时,有时过滤器会截断输出,如:

"This is a dummy string &ntil..."

我可以通过使用mb_substr而不是substr来避免这种情况,所以我需要知道如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

好吧,我找到了一种没有ng-bind-html的方法。我创建了另一个带有he库的过滤器,用于在剪切之前过滤字符串:

mod.filter('htmlEntitiesDecode', function () {

 return function (html) {
  return he.decode(html);
 }

});

图书馆就是这个:he library

所以现在我可以用这种方式:

<p>{{ longString | htmlEntitiesDecode | strLimit : 50 }}</p>