angular:显示字符串或数组

时间:2015-04-10 16:21:54

标签: angularjs templates

我有一个角度应用程序,我需要处理可能具有以下属性的对象集合:

'field': "string string"

'field': ["string1", "string2", "string3"]

我需要显示它:字符串或以逗号分隔的字符串列表。

处理这些不同物体的最佳角度方法是什么?我知道如果:阻塞,if-not:阻止我可能会这样做。但它会变得非常冗长。还有更好的方法吗?

1 个答案:

答案 0 :(得分:0)

过滤器是您最好的选择。像这样的东西

app.filter('separate', function () {
  return function (input) {
    return angular.isArray(input) ? input.join() : input;
  };
});

用法为{{ field | separate }}。 您可以使用控制器范围中定义的函数执行类似的操作,但这是过滤器的用途。

此外,您可以在没有任何过滤器的表达式中输出数组,例如如果需要它进行调试,Angular会将它们解析为字符串。