我有这个HTML:
<div class="{{ article.contributor }}" ng-repeat="article in articles">
这给了我这个:
<div class="["harry", "eddy", "john"]">
但我想要这个:
<div class="harry eddy john">
这样做的最佳方式是什么?
非常感谢
答案 0 :(得分:0)
尝试加入数组,如下所示:
<div class="{{ article.contributor.join(' ') }}" ng-repeat="article in articles">
答案 1 :(得分:0)
哦,选择......快乐的选择。 快速脏 ...
<div class="{{ typeof article.contributors === 'array' ? article.contributors.join(' ') : article.contributors }}" ng-repeat="article in articles"></div>
作为过滤器......
myAppname.module.filter('spaceSeperatedValues', function() {
return function(data){
//handles if just a string (e.g., 'John')
return data === 'array' ? data.join(' ') : data;
}
}
<div class="{{ article.contributors | spaceSeperatedValues }}" ng-repeat="article in articles"></div>
作为控制器功能..
app.module.controller('ArticleController', ['$scope'], function ($scope) {
$scope.articles = [{ text : 'my article text', contributors : ['harry', 'eddy', 'john'] }]
$scope.spaceSeperatedValues = function(data) {
//handles if just a string (e.g., 'John')
return data === 'array' ? data.join(' ') : data;
}
}
<div ng-controller="ArticleController">
<div class="{{ spaceSeperatedValues(article.contributors) }}" ng-repeat="article in articles"></div>
</div>
未在调试器中检查此代码...&lt; - 免责声明。 :d