我之前一直在使用这样的索引值:
{{ $index }}
我真正需要的不是得到一个数字,而是我想得到一个从 A 到 Z 的大写字符。字符用完应该没有问题,因为我最多只有 10 个重复的东西。
有人能告诉我我该怎么做吗?
我之前一直在使用这样的索引值:
{{ $index }}
我真正需要的不是得到一个数字,而是我想得到一个从 A 到 Z 的大写字符。字符用完应该没有问题,因为我最多只有 10 个重复的东西。
有人能告诉我我该怎么做吗?
将以下方法添加到您的范围:
$scope.indexChar = function (index) {
return String.fromCharCode(65 + index);
};
然后在您的视图中使用它:
{{ indexChar($index) }}
这是小提琴:http: //jsfiddle.net/Xs5Qn/
您可以使用包含在过滤器中的函数 String.fromCharCode(n):
angular.module('myApp').filter('fromCharCode', function() {
return function(input) {
return String.fromCharCode(input);
};
});
在模板中,您可以这样称呼它:
{{($index + 65) | fromCharCode}} // 65 is the letter A
编辑:您还可以创建一个只返回大写字母的更具体的过滤器:
angular.module('myApp').filter('letterFromCode', function() {
return function(input) {
var code = input % 26;
return String.fromCharCode(65 + code);
};
});
只需使用一个数组,代表字母表。
$scope.alphabet = ["A", "B", "C", .... "Z"];
并在模板中使用它,例如:
{{ alphabet[$index] }}