在使用Extjs 开发时,可以用一静态类,将某些实例控件缓存下来:
一个静态类(公有帮助类),通过继承ViewCache类 ,来缓存实例
Ext.define('TD.util.Helper', {
alternateClassName: 'TDHelper',//自定义静态类名
mixins: ['ViewCache'], // 管理/缓存 界面实例
singleton: true,
/**
* 获取页面
* @param {*} key
* @param {*} xtypeName
*/
getView(key, xtypeName) {
const me = this;
let view = me.getFromViewCache(key);//通过一个key 值缓存独特实例
if (!view) {
view = Ext.create({
xtype: xtypeName
});
me.addToViewCache(key, view);//加到实例中
}
return view;
},
});
一个实例控件:
Ext.define('TD.view.DemoWin', {
extend: 'Ext.Dialog',
xtype:'td_demowin',
referenceHolder: true,