1
This post最初提出問題,並且包含一個受歡迎的答案,但我無法找到更新代碼以與ControllerAs一起使用的方式。Angularjs:在使用ControllerAs時過濾ng重複使用
var app = angular.module('myApp', []);
app.filter('slice', function() {
return function(arr, start, end) {
return arr.slice(start, end);
};
});
app.controller('MainController', function() {
vm = this;
vm.items = [];
vm.start = 0;
vm.end = 20;
for (var i = 0; i < 100; i++) vm.items.push(i);
return vm;
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myApp">
<div ng-controller='MainController as main'>
Start: <input ng-model="main.start"> End: <input ng-model="main.end">
<ul>
<li ng-repeat="item in items | slice:main.start:main.end">{{item}}</li>
</ul>
</div>
</div>
好的。整個'vm = this'這個東西雖然看起來不好。這是一個未聲明(和兩個字母!)變量開始...。 –
是啊..人們混淆$範圍和控制器的語法。或有時它的正義語法問題.. – dhavalcengg
哎呀 - 一個太少'main.'道歉的無趣的問題。 –