-
23 Nov 2012 12:31 AM #1
Controllers can be initialized twice
Controllers can be initialized twice
REQUIRED INFORMATION
Ext version tested:- Ext 4.1.3
Browser versions tested against:- Chrome
Description:- 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.
HELPFUL INFORMATION
Possible fix:- Access controllers with the shorter namespace name . Not the full.
Operating System:- Mac OSx
-
26 Nov 2012 8:46 AM #2Sencha - Senior Forum Manager
- Join Date
- Mar 2007
- Location
- St. Louis, MO
- Posts
- 34,117
- Vote Rating
- 453
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.MainMitchell Simoens @SenchaMitch
Sencha Inc, Senior Forum Manager
________________
http://www.JSONPLint.com - Source to lint your JSONP!
Check out my GitHub, lots of nice things for Ext JS 4 and Sencha Touch 2
https://github.com/mitchellsimoens
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 services@sencha.com
Want to learn Sencha Touch 2? Check out Sencha Touch in Action that is almost in print!
When posting code, please use BBCode's CODE tags.
You found a bug! We've classified it as
EXTJSIV-7822
.
We encourage you to continue the discussion and to find an acceptable workaround while we work on a permanent fix.


Reply With Quote