为什么我的JSON在剑道UI显示为Datasource.options.data,而不是Datasource.data



新剑道,我有一个艰难的时间让我的JSON数据显示在剑道网格。如果我引用$scope。通过一个普通的html表,我可以在页面中查看它。

最终我要完成这个

列标头显示在页面上,但在它们下面没有数据。

当我试图填充剑道网格时,我可以看到我期望通过Chrome剑道UI检查器在数据源->选项->数据数组中的数据,但我不知道如何让它显示在页面上,它不填充数据源->数据数组。我试着通过剑道角页面上的例子,但没有运气。我还尝试在html中的div下添加各种元素/标签,但我又回到了我开始的地方。

如果我还需要补充什么,请告诉我。任何帮助使这个人口是非常感激的。提前感谢!

HTML:

<div kendo-grid k-data-source="gridOptions"></div>

控制器:

var actionHistoryControllers = angular.module('actionHistoryControllers', ['kendo.directives'])
        .controller('ActionHistoryCtrl', ['$scope', '$routeParams', 'ActionHistory',
             function ($scope, $routeParams, ActionHistory) {
                 $scope.actionData = ActionHistory.query({ appid: $routeParams.appid },
                       function (data) {
                           $scope.error = false;
                           $scope.errorMsg = "";
                       },
                       function (data) {
                           $scope.error = true;
                           $scope.errorMsg = "<strong>Unable to load!</strong> Please reload the page.";
                       });
                 $scope.gridOptions = {
                     data: $scope.actionData,
                     columns: [
                         {field: "UserID", title: "User ID"},
                         {field: "ActionText", title: "Action Text"}]
                 }
              }])

Chrome Kendo UI Inspector:

Data source
   options: Object{9} 
   data: Array[3] 
      0: Object{17} 
        ActionHistoryID: 315911
        ActionText: "System"
        ...

请替换以下内容:

$scope.gridOptions = {
                     data: $scope.actionData,
                     columns: [
                         {field: "UserID", title: "User ID"},
                         {field: "ActionText", title: "Action Text"}]
                 }

与以下内容:

$scope.gridOptions = {
    dataSource: {
                    transport: {
                        read: function (o) {                        
                            o.success($scope.actionData);
                        }
                    },
                     columns: [
                         {field: "UserID", title: "User ID"},
                         {field: "ActionText", title: "Action Text"}]
                }
}

最新更新