Javascript ng重复将数组解析为字符串
是否可以将数组值解析为字符串?我会解释我的意思Javascript ng重复将数组解析为字符串,javascript,angularjs,parsing,angularjs-ng-repeat,Javascript,Angularjs,Parsing,Angularjs Ng Repeat,是否可以将数组值解析为字符串?我会解释我的意思 <tr ng-repeat="(key,property) in obj.properties"> <td>{{key}}</td> <td>{{property}}</td> </tr> 这个{property}}是一个数组,例如[7,8],但是我想展示Jully-August。可以通过过滤器吗?或者我需要在控制器中解析它 使用过滤器将数字
<tr ng-repeat="(key,property) in obj.properties">
<td>{{key}}</td>
<td>{{property}}</td>
</tr>
这个{property}}是一个数组,例如[7,8],但是我想展示Jully-August。可以通过过滤器吗?或者我需要在控制器中解析它 使用过滤器将数字转换为月份名称:-
<td>{{property|monthName}}</td>
app.filter('monthName', [function() {
return function (monthNumber) {
//1 = January
var monthNames = [ 'January', 'February', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November', 'December' ];
var nameList="";
for(var i=0;i<monthNumber.length;i++){
if(i==monthNumber.length-1){
nameList+=monthNames[monthNumber[i] - 1];
}else{
nameList+=monthNames[monthNumber[i] - 1]+"-";
}
}
return nameList;
}
}]);
你也可以做到
<td>{{property|showMonthName}}</td>
app.filter('showMonthName', function() {
return function (months) {
var monthNames = [ 'January', 'February', 'March', 'April', 'May', 'June',
'July', 'August', 'September', 'October', 'November', 'December' ];
months = months.map(function(i){
return monthNames[i-1];
});
return months.join(' - ');
}
});
所以我在自己的系统中尝试了这个。我创建了一个过滤器并应用于ng repeat内部。它工作得很好。您可以在此基础上修改自己的过滤器
<test-directive keyword = "view.ctrlKeywordinput" ng-repeat="movie in [1,2]" ><div> {{movie | monthfilter}}</div></test-directive>
嘿,伙计们!非常感谢=我最终解决了它。。。我希望这能帮助其他人解决同样的问题。我会选择一个答案。再次感谢。
app.filter("monthfilter", function(){
return function(input){
switch(input){
case 1:
return "january";
break;
case 2:
return "february";
break;
}
};
});