Nic*_*ros 10 angularjs angularjs-ng-repeat
简单的问题 - 如果我在我的控制器中有这个:
$scope.somedata = 'Item 1, Item 2'; // set from something else
Run Code Online (Sandbox Code Playgroud)
有没有办法在ngRepeat表达式中为我的视图拆分somedata?就像是:
<div ng-repeat="item in somedata | split(',')">{{item}}</div>
Run Code Online (Sandbox Code Playgroud)
哪个不起作用......
或者我必须这样做
$scope.somedata = 'Item 1, Item 2'; // set from something else
$scope.items = somedata.split(',');
Run Code Online (Sandbox Code Playgroud)
然后
<div ng-repeat="item in items>{{item}}</div>
Run Code Online (Sandbox Code Playgroud)
我想我并没有真正理解我在AngularJS中的表达式中能做些什么.
fla*_*aky 28
我想我已经太迟了,但为什么不这样做呢:
<div ng-repeat="item in somedata.split(',')">{{item}}</div>
Run Code Online (Sandbox Code Playgroud)
工作得很好.
JSBin的证据!
red*_*ard 15
字符串右边的字符串|被解析为过滤器的名称(通常它们是字符串格式化过滤器,但是角度团队还提供了filter过滤器,它返回一个过滤的数组(有点误导,因为两者共享相同的名称).您可以创建自己的拆分过滤器来完成您想要的任务:
angular.module('myFilters', []).
filter('split', function() {
return function(input, delimiter) {
var delimiter = delimiter || ',';
return input.split(delimiter);
}
});
Run Code Online (Sandbox Code Playgroud)
您可以像这样使用过滤器:
<div ng-repeat="item in somedata | split">
Run Code Online (Sandbox Code Playgroud)
或者指定分隔符:
<div ng-repeat="item in somedata | split:,">
Run Code Online (Sandbox Code Playgroud)
考虑上面的伪代码,因为我还没有测试过它.
Le plunker:http://plnkr.co/edit/hk6F0Y6p5YAXv6fyXfSz?p=preview
| 归档时间: |
|
| 查看次数: |
21050 次 |
| 最近记录: |