Hi Guys,
I'm attempting to override application so that we can add some baked in functionality for a suite of products that will all use the same base.
Application.js
Code:
Ext.define("MyApp.mobile.Application", {
override:"Ext.app.Application",
requires:[
'MobileApp.controller.mobileFramework.security.SetupDevice',
'MobileApp.controller.mobileFramework.security.Security'
],
config:{
controllers:[
'MobileApp.controller.mobileFramework.security.SetupDevice',
'MobileApp.controller.mobileFramework.security.Security']
}
});
app.js
Code:
Ext.application({
name:'MobileApp'
});
The problem is the config items I put in the override don't get used so the controllers are not loaded. I can force them to be put in like this.
Code:
Ext.define("MyApp.mobile.Application", {
override:"Ext.app.Application",
requires:[
'MobileApp.controller.mobileFramework.security.SetupDevice',
'MobileApp.controller.mobileFramework.security.Security'
],
constructor:function(config){
config = config || {};
config.controllers = config.controllers || [];
config.controllers.push('mobileFramework.security.Security');
config.controllers.push('mobileFramework.security.SetupDevice');
this.callParent(arguments);
}
});
But that seems kind of weird.
Should you be able to define configs in an override?
If not how would I add a new config type property to a class? I.E.
Code:
Ext.define("MyApp.mobile.Application", {
override:"Ext.app.Application",
requires:[
'MobileApp.controller.mobileFramework.security.SetupDevice',
'MobileApp.controller.mobileFramework.security.Security'
],
config:{
newConfig:'my new configuration item'
}
});
This doesn't add the newConfig item.
Thanks
Bob