2014-12-02 39 views
7

我有一個簡單的字符串數組來自服務器:角打印字符串數組沒有引號

[{"things":["me", "my"]}] 

在我的網頁,來顯示陣列我有:

{{things}} 

而且它打印:

["me", "my"] 

如何控制打印,例如,如果我想消除括號和引號?

回答

17

您可以實現一個範圍之類的函數顯示在this fiddle顯示數組作爲逗號分隔字符串。

$scope.array = ["tes","1","2","bla"]; 

$scope.arrayToString = function(string){ 
    return string.join(", "); 
}; 

現在你可以在模板中調用這個函數:

{{arrayToString(array)}} 

更新

您也可以直接使用模板內的數組的join()方法不使用在updated fiddle中顯示的額外功能。

{{array.join(", ")}} 
7

我想你會想ngRepeat類似:

<div class="list" ng-repeat="thing in things"> 
    {{ thing }} 
</div> 
4

您還可以創建自定義angular filter任選一些先進的格式:

module.filter('formatArray', ['OptionalInjection', function(OptionalInjection) { 
    return function(value) { 
    if (!angular.isArray(value)) return ''; 
    return value.map(OptionalInjection.formatter).join(', '); // or just return value.join(', '); 
    }; 
}]) 

然後在html只寫{{yourArrayValue | formatArray}}