0

我正在使用剑道角图和多选。现在我两次调用相同的 api 来加载两者中的数据。有没有办法在同一个 api 调用中定义多个模式?我的数据如下

{
  "List": [
    {
      "Name": "xyz",
      "Activation": "2016-12-08",      
      "End": "2016-12-09",
      "Run": "45",
      "Status": "FAILURE",
      "color": "red"
    },
    {
      "Name": "wqe",
      "Activation": "2016-12-07",        
      "End": "2016-12-08",
      "Run": "46",
      "Status": "FAILURE",  
      "color": "red"
    }
  ],
  "NameList": [
    {
      "Name": "joo"
    },
    {
      "Name": "foo"
    },
    {
      "Name": "too"
    }
  ]
}

我想在一个 api 调用中在网格中添加“列表”,并在多选中添加“名称列表”。

目前我正在使用以下代码调用 api

function getDataSource(requestUrl) {

    var dataSource = {
        transport: {
            read: requestUrl,
            dataType: "json"
        },
        schema: {
            data: "List",
            total: function (response) {
                return response.StatisticList.length;
            },
            model: {
                fields: {
                    Name: { type: "string" },
                    Activation: { type: "date" },
                    End: { type: "date" },
                    Run: { type: "number" },
                    Status: { type: "string" },                        
                    color: { type: "string" }
                }
            }
        },
        sort: { field: "ActivationTime", dir: "desc" },
        pageSize: common.Grid.pageSize
    };
    return dataSource;
}

function getMultiSelectDataSource(requestUrl) {

    var dataSource = {
        transport: {
            read: requestUrl,
            dataType: "json"
        },
        schema: {
            data: "NameList",
            model: {
                fields: {
                    Name1: { type: "string" }
                }

            }
        }
    };
    return dataSource;
}
4

1 回答 1

1

如果您自己手动发出请求,并在 Chart 和 MultiSelect 的 DataSources 中使用本地(自定义)传输或静态分配,则可以在您的场景中通过一个请求实现两个小部件的数据绑定。dataSource.data

于 2016-12-10T07:58:26.597 回答