web-dev-qa-db-ja.com

Ng-テーブルtableParams

私はng-tableの最初の例に従っています( http://bazalt-cms.com/ng-table/example/1 )。

TableParams以外はすべて機能しているようです。コントローラに含めるとすぐに、ページに何も表示されません。

この例と私のコードの違いは、jsonサービスからデータをロードすることです。

angular.module('mean.cars').controller('CarsController', ['$scope', '$stateParams', '$location', 'Global', 'Cars',
function ($scope, $stateParams, $location, Global, Cars, ngTableParams) {
    $scope.global = Global;
    var data = Cars.query();

$scope.tableParams = new ngTableParams({
    page: 1,            // show first page
    count: 10           // count per page
}, {
    total: data.length, // length of data
    getData: function($defer, params) {
        $defer.resolve(data.slice((params.page() - 1) * params.count(), params.page() * params.count()));
    }
});

Cars.query();うまく機能しています(テスト済み)。だから私は何が欠けていますか?次の行に「未定義は関数が発生していません」というJavaScriptエラーがあります。

$scope.tableParams = new ngTableParams({
7
Tyvain

AngularとngTableプラグインも初めてですが、問題は、モジュールにngTableの参照を追加していないことだと思います。

angular.module('mean.cars', ['ngTable'])
       .controller('CarsController', ['$scope', 
                                      '$stateParams', 
                                      '$location', 
                                      'Global', 
                                      'Cars', 
                                      'ngTableParams', 
            function ($scope, $stateParams, $location, Global, Cars, ngTableParams) { ...

モジュールの依存関係の「ngTable」と、コントローラーの「ngTableParams」を見逃しました。

これがお役に立てば幸いです。

21
Elwi

NgTableParamsがどこから来たのかわかりませんが、注入していません。

['$scope', '$stateParams', '$location', 'Global', 'Cars',
function ($scope, $stateParams, $location, Global, Cars, ngTableParams) {

どちらかは次のようになります。

['$scope', '$stateParams', '$location', 'Global', 'Cars', 'ngTableParams',
function ($scope, $stateParams, $location, Global, Cars, ngTableParams) {

またはこのように:

['$scope', '$stateParams', '$location', 'Global', 'Cars',
function ($scope, $stateParams, $location, Global, Cars) {    
5
Mathew Berg

これを試して、ngTableParamsを置き換えてください-> NgTableParams angle.module( 'mean.cars')。controller( 'CarsController'、['$ scope'、 '$ stateParams'、 '$ location'、 'Global'、 'C​​ars'、関数($ scope、$ stateParams、$ location、Global、Cars、NgTableParams){

そして

$ scope.tableParams = new NgTableParams({。それは私のために働いた。

0
Hema Nandagopal