У меня есть простая часть данных, которую я пытаюсь протестировать с помощью Ng-Table. Я последовал примеру ng-table, но предполагаю, что набор данных ожидает обещания вместо массива. Единственная разница, которую я вижу, - это то, как Im обрабатывает $ scope.Почему ngTable не принимает мой набор данных?
Мой пример работает, если я поместил переменную данных в область видимости и не передал ее в tableParams из моего js-файла, но затем я потерял функциональность фильтров.
Ng-Table Пример: https://github.com/esvit/ng-table/blob/master/examples-old/demo15.html
Мой код HTML
<div ng-app="Pulse">
<div ng-controller="MainController as main">
<table ng-table="main.groupTable" class="table" show-filter="true">
<tr ng-repeat="user in $data"
<td title="'Name'" filter="{ name: 'text'}" sortable="'name'">
{{user.name}}</td>
</tr>
</table>
</div>
Js
var app = angular.module("Pulse", ['ngTable'])
.controller("MainController", MainController);
function MainController ($scope, NgTableParams) {
var self = this;
var data = [{name: "Moroni", age: 50}];
$scope.groupTable = new NgTableParams({}, { dataset: data});
};
ваши имена переменных не совпадают. в вашем JS есть '$ scope.groupTable', но в HTML у вас' $ scope.tableParams'. также, ссылаясь на '$ scope' вообще в HTML, неверно. Вместо этого попробуйте 'ng-table =" groupTable "'. – Claies
Да, я попробовал переключение, это ваше предложение, но оно все равно не делает. Я попытался вставить отладчик и проверить groupTable, переменная $ data пуста к моменту загрузки на страницу. – user5596792