extjs - Sencha - Conditionally adding namesapce in requires -


i have requirement want add namespaces in requires conditionally.

e.g. in below example want add 'views.popupgrid' name space on specific condition. it's loaded.

requires: ['ext.window.messagebox','views.popupgrid','user.myuser'  ] 

conditional dependencies not supported sencha toolchain. while able write in text editor of choice

requires:[     (location.hash=='#test')?'testpopup':'normalpopup' ] 

and work in uncompiled version, sencha cmd not able compile correctly, , throw errors.

therefore, sencha architect not support syntax.

what can do, while staying standards-compliant: can use ext.loader.loadscript, e.g. this:

ext.define('myform',{     extend: 'ext.form.panel'     initcomponent:function() {         var me = this;         me.callparent(arguments);         if(x==3) ext.loader.loadscript({             url:'mycustomformcomponent.js',             onload:function(){                 me.add({                     xtype:'mycustomformcomponent'                 });             })         });     } }) 

please note in case have deliver mycustomformcomponent.js alongside minified app.js, because dependency cannot resolved toolchain. also, depending on connection, there may visible delay before resource loaded , component added form.

it faster , smoother load dependency, if intend deliver app single minified javascript file (e.g. using sencha cmd).


Comments

Popular posts from this blog

php - Permission denied. Laravel linux server -

google bigquery - Delta between query execution time and Java query call to finish -

python - Pandas two dataframes multiplication? -