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
Javascript ExtJS视图属性取决于(控制器端)标志_Javascript_Extjs_Model View Controller - Fatal编程技术网

Javascript ExtJS视图属性取决于(控制器端)标志

Javascript ExtJS视图属性取决于(控制器端)标志,javascript,extjs,model-view-controller,Javascript,Extjs,Model View Controller,我定义了一个视图,它应该能够以两种模式调用。根据标志的不同,只有两个区别: 视图标题(config.title) selectfield可能显示或隐藏 以下是简化视图: Ext.define('MyApp.view.fancyView', { xtype: 'fancyview', extend: 'Ext.form.Panel', config: { cls: 'fancyviewclass', title: "titleDependingOnFlag",

我定义了一个视图,它应该能够以两种模式调用。根据标志的不同,只有两个区别:

  • 视图标题(config.title)
  • selectfield可能显示或隐藏
以下是简化视图:

Ext.define('MyApp.view.fancyView', {

xtype: 'fancyview',
extend: 'Ext.form.Panel',

config: {
    cls: 'fancyviewclass',

    title: "titleDependingOnFlag",

    items: [
        {
            xtype: 'fieldset',
            name: 'fieldsetFancy',
            items: [
                {
                    xtype: 'selectfield',
                    itemId: 'stateID',
                    usePicker: true,
                    label: 'state',
                    store: 'States',
                    name: 'StateID',
                    valueField: 'ID',
                    displayField: 'ID'
                },
                {
                    xtype: 'selectfield',
                    itemId: 'countryID',
                    usePicker: true,
                    label: 'country',
                    store: 'Countries',
                    name: 'CountryID',
                    valueField: 'ID',
                    displayField: 'ID',
                    //hidden: true
                }
            ]
        }
    ]
}
});
当然,有一个控制器创建了这个视图。此时,我将标志作为配置值传递,请参见

Ext.define('MyApp.controller.fancyController', {

...
raisedBasedOnTap:function (flag){
this.myFancyFlag = !!flag;

    var myFancyView = Ext.create('FLSMOBILE.minimax.view.CallReportTimestampPlaceCar', {
        myFancyFlag: me.myFancyFlag    
    });

    app.pushView(myFancyView);

}
...
});
使标题取决于标志(如标题:fancyFlag?'title1':'title2')并根据标志隐藏selectfield countryID的最佳方法是什么


提前谢谢

你在使用ExtJS5吗?你能给这个面板添加一个ViewModel吗?这意味着你的问题是关于Sencha Touch而不是ExtJS?