简体   繁体   English

从JsonStore提供数据视图

[英]Feeding the dataview from JsonStore

Feeding the viewdata from the jsonstore 从jsonstore提供viewdata

I want to use a JsonStore to feed my dataview. 我想使用JsonStore来提供我的数据视图。 currently with the code below, the store is empty in the dataview. 目前使用下面的代码,数据视图中的商店是空的。 For testing, I wrote some code in the controller before opening the window and I can see that the restful service retrieves data - getActivitiesToRescueCallback --> responce.responseText . 为了测试,我在打开窗口之前在控制器中编写了一些代码,我可以看到restful服务检索数据 - getActivitiesToRescueCallback --> responce.responseText How can I feed my dataview with the Jsonstore? 如何使用Jsonstore提供数据视图?

In th ViewController: 在ViewController中:

getActivitiesToRescueCallback : function(options, success, response) {
    if (success)
        var result = Ext.decode(response.responseText); // Here I am getting data

},

getActivitiesToRescue : function() {
    Ext.Ajax.request({
        url : '/test/json_p',
        params : {
            "params[]" : "RESCUE",
            "respName" : "",
            "method" : "GetActivities",
            "format" : "json"
        },
        callback : 'getActivitiesToRescueCallback',
        scope : this
    });
},
**View**
Ext.define('Tuv.test.rescue.RescueView', {

extend : 'Ext.window.Window',

alias : 'widget.rescueview',

alias : 'controller.rescueview',

bind : {
    title : '{rescueTexts.masseRescue}'
},

height : 400,

width : 600,

constrainHeader : true,

maximizable : true,

closeAction : "hide",

layout : 'card',

activeItem : 0,

items : [ {
    xtype : 'panel',
    title : 'check activities',
    layout : 'hbox',
    border : false,
    layoutConfig : {
        align : 'stretch'
    },
    tbar : [ {
        xtype : "button",
        text : "copy",
        handler : function() {},
        scope : this
    } ],
    items : [ {
        autoScroll : true,
        width : 150,
        items : {
            xtype : 'dataview',
            listeners : {
                'afterrender' : function(comp) {
                    console.log('Test');
                },
                scope : this
            },
            store : new Ext.data.JsonStore({
                url : '/test/json_p',
                baseParams : {
                    "params[]" : "RESCUE",
                    respName : "",
                    method : "GetActivities",
                    format : "json"
                },
                idProperty : 'ACT_ID',
                fields : [ 'ACT_ID', '_ACT_TYPE', '_FIRST_FORM', 'PRUEFSTATUS', '_DEBUG', '_SYNC_STATUS', '_SYNC_STATUS2', 'EQART', 'INVNR', 'ZTSPRID', 'ANLAGE_ZTSPRID', 'ZTSPRIDT' ]
            }),
            itemSelector : 'tr.dataRow',
            tpl : new Ext.XTemplate('<table id="dataRescueTable">' + '<tpl for=".">', '<tr class="dataRow"><td>' + '<span <tpl if="STATUS==50">style="font-weight: bold;color:green"</tpl>>{name}</span></td></tr>', '</tpl>', '</table>')
        }
    } ],
    bbar : {
        buttonAlign : 'right',
        items : [ {
            text : "next",
            handler : function(button) {

            },
            scope : this
        } ]
    }
} ]

}); });

要加载商店,我必须调用store.load()或将autoLoad: true添加为商店的配置。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM