23 Nov 2012 12:31 AM #1
Controllers can be initialized twice
Ext version tested:
- Ext 4.1.3
Browser versions tested against:
- a controllers init function is runned again if you access a controller with the full namespace.
Steps to reproduce the problem:
- Have a controller loaded with controllers:['document.Main'] in your Ext.applications
- Access the controller with App.getController('app.controller.document.Main');
The result that was expected:
- That init was NOT runned when just doing getController
The result that occurs instead:
- Init() is runned again. I suspect the Controller get registered again because the key in the Controller Manager does not match.
- Access controllers with the shorter namespace name . Not the full.
- Mac OSx
26 Nov 2012 8:46 AM #2
- Join Date
- Mar 2007
- Gainesville, FL
- Vote Rating
Here are my steps to reproduce:
- Generate a new app using Cmd
- In app.js add var controller = this.getController('MyApp.controller.Main'); to a the launch method
The key in the controllers mixed collection has Main but since you are using MyApp.controller.Main it doesn't find the key as Main !== MyApp.controller.Main
Sencha Inc, Senior Software Engineer
Check out my GitHub, lots of nice things for Ext JS 4 and Sencha Touch 2
Think my support is good? Get more personalized support via a support subscription. https://www.sencha.com/store/
Need more help with your app? Hire Sencha Services email@example.com
Want to learn Sencha Touch 2? Check out Sencha Touch in Action that is in print!
When posting code, please use BBCode's CODE tags.