Я просто не понимаю этого. На the smart-table web page, где он обсуждает att12ubbute, я не вижу, где объявляется $scope. displayedCollection
.Является ли документация/демонстрационная версия смарт-таблицы AngularJS ошибкой?
Текст говорит smart-table first creates a safe copy of your displayed collection
, и я
Я предположил, что директива смарт-таблица объявлял, но пример кода не будет работать для меня - строки таблицы пусты - и это то, что выглядит я должен быть проблемой.
Если мы посмотрим, например, на принятый ответ this question, мы объявим $scope.displayedCollection
как пустой массив и присвоим ему значение при получении ответа AJAX. НО, документация не упоминает об этом.
<table st-table="displayedCollection" st-safe-src="rowCollection">
<thead>
<tr>
<th st-sort="firstName">First Name</th>
<th st-sort="lastName">Last Name</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="row in displayedCollection">
<td>{{row.firstName}}</td>
<td>{{row.lastName}}</td>
</tr>
</tbody>
</table
app.controller('Ctrl', function($scope, service) {
$scope.displayedCollection = [];
service.all.then(function(list) {
$scope.rowCollection = list;
$scope.displayedCollection = list;
});
});
Итак, мне нужно заботиться о копии самостоятельно? Нужно ли обновлять документацию? И как работает демо?
[Update] Я нахожу это на the github issues, от @ Tufan-уос
вы должны скопировать массив данных на другой переменной в области видимости:
st-table="displayedCollection" st-safe-src="rowCollection"
и
//copy the references (you could clone ie angular.copy
// but then have to go through a dirty checking for the matches)
$scope.displayedCollection = [].concat($scope.rowCollection);
Если это действительно требование, почему это не документировано?
И почему этот пример на веб-сайте смарт-стола работает без него?
Это работает только для меня, если я делаю копию в своем коде, а не когда нет. Мой код слишком большой для публикации, но вы можете видеть то же самое по адресу http://plnkr.co/edit/s407ao?p=preview, комментируя строку 18 – Mawg
смарт-таблицы и угловые версии, которые вы используете на плункерах. довольно старый ... – laurent
Это может объяснить это (+1). Я попытаюсь найти время для обновления Plunk (хотя я работаю с самой новой версией дома и все еще имею такую же ситуацию). – Mawg