Tôi thấy các hướng dẫn AngularJS khó hiểu; ứng dụng này đang hướng dẫn tôi xây dựng một ứng dụng hiển thị điện thoại. Tôi đang ở bước 5 và tôi nghĩ như một thử nghiệm tôi sẽ cố gắng cho phép người dùng chỉ định số lượng họ muốn được hiển thị. Khung nhìn trông như thế này:
<body ng-controller="PhoneListCtrl">
<div class="container-fluid">
<div class="row-fluid">
<div class="span2">
<!--Sidebar content-->
Search: <input ng-model="query">
How Many: <input ng-model="quantity">
Sort by:
<select ng-model="orderProp">
<option value="name">Alphabetical</option>
<option value="age">Newest</option>
</select>
</div>
<div class="span10">
<!--Body content-->
<ul class="phones">
<li ng-repeat="phone in phones | filter:query | orderBy:orderProp">
{{phone.name}}
<p>{{phone.snippet}}</p>
</li>
</ul>
</div>
</div>
</div>
</body>
Tôi đã thêm dòng này nơi người dùng có thể nhập bao nhiêu kết quả họ muốn hiển thị:
How Many: <input ng-model="quantity">
Đây là bộ điều khiển của tôi:
function PhoneListCtrl($scope, $http) {
$http.get('phones/phones.json').success(function(data) {
$scope.phones = data.splice(0, 'quantity');
});
$scope.orderProp = 'age';
$scope.quantity = 5;
}
Dòng quan trọng là:
$scope.phones = data.splice(0, 'quantity');
Tôi có thể mã cứng trong một số để thể hiện số lượng điện thoại sẽ được hiển thị. Nếu tôi đặt 5
vào, 5 sẽ được hiển thị. Tất cả những gì tôi muốn làm là đọc số trong đầu vào đó từ chế độ xem và đặt số đó vào data.splice
dòng. Tôi đã thử với và không có dấu ngoặc kép, và không hoạt động. Làm thế nào để tôi làm điều này?