1

我在 Sencha Touch 文档中看到了这段代码。如果 autoCreate 设置为 false,信息面板视图会发生什么情况?不确定我是否理解为什么必须指定 autoCreate。如果使用对象类型 ref 而不是简单类型,它是否不能在幕后执行此操作?

refs: {
    main: '#mainTabPanel',
    loginButton: '#loginWindow button[action=login]',

    infoPanel: {
        selector: 'infopanel',
        xtype: 'infopanel',
        autoCreate: true
    }
}
4

1 回答 1

1

我只是在我的一个项目中替换了几行代码以使用autoCreate.

这是我以前做的:

refs: {
  detailsView: 'detailsview'
},

...

var view = (!this.getDetailsView()) ? Ext.create('App.view.DetailsView') : this.getDetailsView();
nav.push(view);

我曾经通过调用 getter 检查是否创建了视图this.getDetailsView()。如果没有创建,我创建了它,否则我只是使用了对它的引用。

现在,我正在使用 autoCreate,这就是我所做的:

refs: {
  detailsView: {
    selector: 'detailsview',
    xtype: 'detailsview',
    autoCreate: true
  }
},

...

var view = this.getDetailsView()
nav.push(view);

调用 getterthis.getDetailsView()将使用对已创建组件的引用或创建它。

希望这可以帮助

于 2012-12-14T14:22:56.593 回答