角度滤镜不打印空格

Angular filter doesn't print white spaces

本文关键字:打印 空格 滤镜      更新时间:2023-09-26

当我有这么简单的 Angular 过滤器代码时:

{{ 'result: ' + array | printArray }}

带过滤器:

app.filter('printArray', [
  function() {
    return function(array) {
      if (!angular.isArray(array)) {
        return array;
      }
      var result = '';
      if (array.length > 0) {
        result = array[0];
        for (var i = 1; i < array.length; i++) {
          result += ', ' + array[i];
        }
      }
      return result;
    };
  }
]);

我想自然result: one, two, three, four,但结果是:

abc one,two,three,four

我认为它会通过这个明显的代码来解决:

{{ 'result: ' }}{{ array | printArray }}

但我想知道为什么 Angular 以奇怪的方式工作。

普伦克:http://plnkr.co/edit/QRtntKedYHKb5UnZD3w7

看看这个

  <body ng-controller="MainCtrl">
  {{ 'result: ' + ( array | printArray ) }}
  </body>
在这个

例子中,我使用了Array.join()函数,
并将字符串移动到大括号的外部:

result: {{ array | printArray }}

http://plnkr.co/edit/CRKChEtF5HafdRPV8eW4?p=preview