Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Extjs 将数据从控制器传递到另一个视图并设置标签';senchatouch中的s值_Extjs_Sencha Touch 2 - Fatal编程技术网

Extjs 将数据从控制器传递到另一个视图并设置标签';senchatouch中的s值

Extjs 将数据从控制器传递到另一个视图并设置标签';senchatouch中的s值,extjs,sencha-touch-2,Extjs,Sencha Touch 2,我有一个控制器,我想把一个简单的字符串值传递给下一个视图 为此,我创建了这样的视图 var nextView = Ext.create('MyApp.view.NextView', { content: 'value' }); Ext.Viewport.add(nextView); Ext.Viewport.animateActiveItem(nextView, { type: 'slide', direction: 'left' }); Ext.define('MyA

我有一个控制器,我想把一个简单的字符串值传递给下一个视图

为此,我创建了这样的视图

var nextView = Ext.create('MyApp.view.NextView', {
    content: 'value'
});
Ext.Viewport.add(nextView);
Ext.Viewport.animateActiveItem(nextView, {
    type: 'slide',
    direction: 'left'
});
Ext.define('MyApp.view.NextView', {
    extend: 'Ext.form.Panel',
    config: {
        content: 'null',
        items: [{
            xtype: 'label',
            html: 'value'
        }]
    }
});
在下一个视图中,我有一个标签,我想将标签的
HTML
属性设置为我从控制器传递的值。即

我的下一个视图是这样的

var nextView = Ext.create('MyApp.view.NextView', {
    content: 'value'
});
Ext.Viewport.add(nextView);
Ext.Viewport.animateActiveItem(nextView, {
    type: 'slide',
    direction: 'left'
});
Ext.define('MyApp.view.NextView', {
    extend: 'Ext.form.Panel',
    config: {
        content: 'null',
        items: [{
            xtype: 'label',
            html: 'value'
        }]
    }
});
我不知道如何从这里开始。我不能把下一个视图作为表单。在这种情况下,我只需要传递一个字符串值


实现这一点的最佳方法是什么?

使用
初始化
方法访问如下配置数据:

Ext.define('MyApp.view.NextView', {
    extend: 'Ext.form.Panel',
    config: {
        content: 'null',
        items: [
            {
                xtype: 'label',
                html: 'value'
            }
        ]
    },
    initialize : function(){
        this.callParent();
        var val = this.config.content;
        this.down('label').setHtml(val);
    }
});

PS请随意在
向下
功能中使用您喜爱的选择器

我知道问题已经得到了回答。但我刚刚找到了一种非常自然的方法,可以将数据从控制器传递到视图(使用视图的构造函数)。我在将web桌面集成到我的应用程序时使用了它

在控制器中,将数据传递给视图的构造函数,如下所示:

loiTab = Ext.create('Iip.view.giips.admission.DetailedLoiTab', {closable: true, selectedLoiData: selected[0].data});
constructor: function(selectedLoiData) {
    Ext.applyIf(this, selectedLoiData);
    this.callParent();
},
initComponent: function(){
    console.log(this.selectedLoiData);
}
在视图中,按如下方式启动构造函数:

loiTab = Ext.create('Iip.view.giips.admission.DetailedLoiTab', {closable: true, selectedLoiData: selected[0].data});
constructor: function(selectedLoiData) {
    Ext.applyIf(this, selectedLoiData);
    this.callParent();
},
initComponent: function(){
    console.log(this.selectedLoiData);
}
以下方法与构造函数位于同一文件中。您可以从构造器所在视图中的任何位置访问SelectedLoidData,如下所示:

loiTab = Ext.create('Iip.view.giips.admission.DetailedLoiTab', {closable: true, selectedLoiData: selected[0].data});
constructor: function(selectedLoiData) {
    Ext.applyIf(this, selectedLoiData);
    this.callParent();
},
initComponent: function(){
    console.log(this.selectedLoiData);
}