Перезагрузка ng-таблицы AngularJS в контроллере

Я не могу получить доступ к tableview в своем контроллере, используя

 **$scope.tableview.reload()**

view.html is this.

 <div class="container-fluid" ng-controller="SearchListCtrl">

      <input ng-model="titleFilter"> Title Filter: {{ titleFilter }}
      <table ng-table="tableview" show-filter="true" class="table-responsive table table-striped table-bordered table-condensed table-hover">
        <thead>
          <tr><th colspan="3">Book Shelf</th></tr>
        </thead>
        <tbody>
          <tr ng-repeat="book in books | filter:titleFilter">
            <td><a href="#/data/{{$index + 1}}" ng-click="editBook(book)" class="thumb">{{$index + 1}}</a></td>
            <td class="col-sm-4">
              {{book.genre}}
            </td>
            <td class="col-sm-4">{{book.title}}</td>
            <td class="col-sm-4">{{book.author}}</td>
            <td>
                <button class="btn btn-danger btn-mini" ng-click="deleteRow($index)">
                    <i class="icon-trash icon-white"></i>
                </button>
          </tr>
        </tbody>
      </table>

контроллер это

     librarysystemcontroller.controller('SearchListCtrl',
                                     ['$scope',
                                      'Library',
                                      'EditBookService',
                                      '$http',
                                      '$rootScope',
                                      function($scope,
                                               Library,
                                               EditBookService,
                                               $http,
                                               $rootScope) {
            $scope.tableview.reload();
        }]); 

@scope.tableview не определен. Разве это не разрешено? Другие элементы модели, такие как ng-model, доступны.

Error is this. Is there a problem with the HTML ?

TypeError: Cannot read property 'reload' of undefined

Обновление: я думаю, что моей текущей таблицы достаточно для моих целей. ng-table, кажется, требует некоторых конфигураций, которые мне не нужны.


person Mohan Radhakrishnan    schedule 15.11.2014    source источник
comment
Предполагая, что librarysystemcontroller является угловым модулем, ошибки не будет. Однако я вижу отсутствующие ] и ) в конце контроллера.   -  person Gerdinand    schedule 15.11.2014
comment
ng-table — это сторонний модуль, а не директива, встроенная в angular. для правильной работы требуется объект инициализации, который должен быть объектом с включенной функцией reload(). Я не вижу в этом коде, где вы создали этот объект или даже ссылаетесь на стороннюю библиотеку? bazalt-cms.com/ng-table   -  person Claies    schedule 15.11.2014
comment
‹ссылка href=lib/angular/ng-table.css rel=stylesheet› ‹script src=lib/angular/ng-table.js›‹/script› У меня есть это сейчас, но это не работает. Они загружены правильно.   -  person Mohan Radhakrishnan    schedule 15.11.2014
comment
да, а где код инициализации?   -  person Claies    schedule 15.11.2014
comment
var module = angular.module('librarysystem', ['ngTable','ngRoute','librarysystemcontroller','libraryServices']);   -  person Mohan Radhakrishnan    schedule 16.11.2014
comment
@MohanRadhakrishnan, где инициализация ngtableparams , например здесь?   -  person Kostia Mololkin    schedule 16.11.2014
comment
также загляните сюда /26939837/   -  person Kostia Mololkin    schedule 16.11.2014


Ответы (1)


в вашем контроллере поместите этот "ngTableParams"

librarysystemcontroller.controller('SearchListCtrl',
                                     ['$scope',
                                      'Library',
                                      'EditBookService',
                                      '$http',
                                      '$rootScope',
                                      function($scope,
                                               Library,
                                               EditBookService,
                                               $http,
                                               $rootScope,ngTableParams) { 
person Giovani Hgo    schedule 25.04.2015