extjs 在完成所有渲染和inputEl渲染后,哪个方法应该获取菲耶尔

cygmwpex  于 2022-11-05  发布在  其他
关注(0)|答案(1)|浏览(150)

在完成所有渲染和inputEl渲染后,哪个方法应该获取菲耶尔。
我有一个标签面板,我在那里使用面板和窗格有窗体和窗体有显示字段。
在我的例子中,我的displayfield值没有得到render。这个值在dom中不可用。所以我想手动添加这些值。

Ext.fly(displayfield.id).set({ 'value': displayfield.value });

但问题是

  • afterrender方法在渲染在dom中完成之前被fired。任何建议我应该使用哪种方法。
9lowa7mx

9lowa7mx1#

让系统为您完成工作。
在表单面板的viewModel中设置值,并将显示字段的value属性绑定到viewModel中的data属性。
Sencha 琴

Ext.application({
    name: 'Fiddle',
    launch: function () {
        Ext.create('Ext.form.Panel', {
            renderTo: Ext.getBody(),
            viewModel: {
                data: {
                    field1: 'default view model'
                }
            },
            controller: {
                init: function(formPanel) {
                    formPanel.getViewModel().set('field1', 'New Display Value');  
                },
            },
            items: [{
                title: 'Title',
                bodyPadding: '10 15 0 10',
                layout: {
                    type: 'vbox'
                },

                items: [{
                  xtype: 'displayfield',
                  name: 'field1',
                  bind: {
                      value: '{field1}'
                  },
                  value: 'default value',
                  fieldLabel: 'Field One'
                }]
            }]
        });
    }
});

相关问题