出现 AngularJS Ui-网格错误

Have an AngularJS Ui-grid Error

我有一个包含 angular js、mongoose、express 等的单页应用程序。尝试使用 angular ui 网格并出现错误:

"TypeError: Cannot read property 'data' of undefined at new (ui-grid.js:2967) at Object.e [as invoke] (angular.js:4203) at $get.w.instance (angular.js:8493) at angular.js:7739 at r (angular.js:331) at B (angular.js:7738) at $get.c (angular.js:8016) at g (angular.js:7117) at B (angular.js:7763) at g (angular.js:7117)"

这是我控制器的一部分:

angular.module('flatCtrl', ['flatService', 'ui.grid'])
    .controller('FlatController', function(Flat, socketio){

        vm = this;

        Flat.allFlat()
            .success(function(data){
                vm.flats = data;
                console.log(vm.flats);
                vm.gridOptions.data = data;

            })

和HTML的一部分:

<div class="col-md-12" ng-controller="FlatController as flat">
        <div ui-grid="gridOptions"></div>

如果我尝试使用 vm.gridOptions.data = data 成功后没有任何变化。

console.log(vm.flats) 中有我所有的对象:

[Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object]0: Object1: Object2: Object3: Object4: Object5: Object6: Object7: Object8: Object9: Object10: Object11: Object

所以,在数据中我有数据

改变

vm.gridOptions.data = data;

vm.gridOptions = {};
vm.gridOptions.data = data;

vm.gridOptions = { data: data }

<div class="col-md-12" ng-controller="FlatController as flat">
    <div ui-grid="flat.gridOptions"></div>

您正在尝试读取未定义的 vm.gridOptionsdata 属性,因此首先您需要定义 vm.gridOptions 并设置该对象的 data 属性.