Success! Looks like we've fixed this one. According to our records the fix was applied for TOUCH-1761 in a recent build.
  1. #1
    Ext JS Premium Member
    Join Date
    Apr 2010
    Location
    Omaha, NE
    Posts
    557
    Vote Rating
    25
    estesbubba will become famous soon enough estesbubba will become famous soon enough

      0  

    Default [B1] sencha-touch-debug.js and builds/sencha-touch-all-debug.js different codebase?

    [B1] sencha-touch-debug.js and builds/sencha-touch-all-debug.js different codebase?


    Been beating my head trying to get our application working on B1. First off, we don't use the dynamic loader but I got our application to work with sencha-touch-debug.js. Our controllers that define views could do a me.getMainView().create() and worked just fine.

    Now that I got that working I moved to builds/sencha-touch-all-debug.js and got a Object has no method 'getMainView'. Same controller as I used above. OK, so I changed it to an Ext.create() and nothing in the console but a blank screen. Debugged through my app and seemed to be working. Co-worker said he saw that fullscreen: true was no longer the default. Added that and worked great!

    So, which codebase is correct? These sure don't seem to be built from the same codebase. We also don't want to use the dynamic loader.

  2. #2
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    37,647
    Vote Rating
    898
    mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute

      0  

    Default


    sencha-touch-debug.js doesn't have all the widgets, it's just the core of the framework. The files in the builds are the ones that have all classes. You can see that sencha-touch-debug.js is only 451 KB but sencha-touch-all-debug.js is 2.3 MB
    Mitchell Simoens @SenchaMitch
    Sencha Inc, Senior Forum Manager
    ________________
    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 in print!

    When posting code, please use BBCode's CODE tags.

  3. #3
    Ext JS Premium Member
    Join Date
    Apr 2010
    Location
    Omaha, NE
    Posts
    557
    Vote Rating
    25
    estesbubba will become famous soon enough estesbubba will become famous soon enough

      0  

    Default


    I realize that one is the core and dynamically loads components and the other contains the entire framework. The code should behave the same not matter how it was loaded, correct? My point is why would one create getters for views in a controller and the other one not? Also, one requires fullscreen: true and the other doesn't.

    It's my understanding that my code should run using any of the builds. That is not the case.

  4. #4
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    37,647
    Vote Rating
    898
    mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute

      0  

    Default


    It should. fullscreen shouldn't be a default in any release. The getters shouldn't be created at all. It should all be built from the same code so technically it should be the same code.
    Mitchell Simoens @SenchaMitch
    Sencha Inc, Senior Forum Manager
    ________________
    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 in print!

    When posting code, please use BBCode's CODE tags.

  5. #5
    Ext JS Premium Member
    Join Date
    Apr 2010
    Location
    Omaha, NE
    Posts
    557
    Vote Rating
    25
    estesbubba will become famous soon enough estesbubba will become famous soon enough

      0  

    Default


    Mitchell - can you move this to the bugs forum? At this point how do we know which build is correct and the one we should be developing against?

  6. #6
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    37,647
    Vote Rating
    898
    mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute

      0  

    Default


    Done!
    Mitchell Simoens @SenchaMitch
    Sencha Inc, Senior Forum Manager
    ________________
    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 in print!

    When posting code, please use BBCode's CODE tags.

  7. #7
    Sencha - Community Support Team edspencer's Avatar
    Join Date
    Jan 2009
    Location
    Palo Alto, California
    Posts
    1,939
    Vote Rating
    9
    edspencer is a jewel in the rough edspencer is a jewel in the rough edspencer is a jewel in the rough

      0  

    Default


    Can you paste your Controller code? It sounds like you're defining your views on the prototype instead of in the config object. You should be able to run your app with sencha-touch-debug.js without seeing any console warnings before moving it into a production setting.

    Also, bear in mind that those generated get*View methods are not generated in Touch 2. We've removed them because they add very little value and take up valuable space and startup execution time (they all have to be generated for every View in every Controller at bootup). Instead we suggest you just instantiate views like any other class - using Ext.create (e.g. Ext.create('MyApp.view.MyView').
    Ext JS Senior Software Architect
    Personal Blog: http://edspencer.net
    Twitter: http://twitter.com/edspencer
    Github: http://github.com/edspencer

  8. #8
    Sencha User
    Join Date
    Jan 2012
    Posts
    11
    Vote Rating
    0
    CreepGin is on a distinguished road

      0  

    Default


    Just switched to B1, and I may be experiencing something resulting from the same issue.

    Using builds/sencha-touch-all-debug.js works fine but using sencha-touch-debug.js leads to some problems.

    It throws (on StoreManager.js:100):

    Code:
    Uncaught TypeError: Expecting a function in instanceof check, but got #<Object>
    which traces back to this line of code in my app.js

    Code:
    var navView = Ext.create('MyApp.view.MainNav');
    MainNav extends Ext.NavigationView with some inline data, model, and store.

  9. #9
    Sencha - Community Support Team edspencer's Avatar
    Join Date
    Jan 2009
    Location
    Palo Alto, California
    Posts
    1,939
    Vote Rating
    9
    edspencer is a jewel in the rough edspencer is a jewel in the rough edspencer is a jewel in the rough

      0  

    Default


    If you're able to make a reduced (but complete) test case or show me an example from the SDK that fails I'll be happy to investigate
    Ext JS Senior Software Architect
    Personal Blog: http://edspencer.net
    Twitter: http://twitter.com/edspencer
    Github: http://github.com/edspencer

  10. #10
    Sencha User
    Join Date
    Jan 2012
    Posts
    11
    Vote Rating
    0
    CreepGin is on a distinguished road

      0  

    Default


    Sure thing. I'll start with including two of my files. Let me know if more is needed. Thanks.

    app.js
    Code:
    Ext.Loader.setConfig({enabled:true});Ext.Loader.setPath({
        //'Ext.data': '../../src/data',
        'MyApp': 'app'
    });
    var mainLaunch = function(){
        if (!this.launched) {return;}
        log("mainLaunch");
        MyApp = this;
        var navView = Ext.create('MyApp.view.MainNav');    //Uncaught TypeError spawns from here
    
        var mainPanel = Ext.create('Ext.Panel');
        if (Ext.os.isPhone){
            mainPanel.setLayout("fit");
            
            mainPanel.add(navView);
        }else{
            navView.setWidth(300);
            mainPanel.setLayout('hbox');
            mainPanel.add(navView);
            var detailPanel = Ext.create('MyApp.view.DetailPanel');
            mainPanel.add(detailPanel);
        }
        Ext.Viewport.add(mainPanel);
    };
    Ext.application({
        name: "MyApp",
        requires: ['Ext.Anim'],
        controllers: ['Home', 'TwitterNews'],
        views: ['MainNav', 'RefreshableList'],
        
        launch: function(){
            log("launch");
            this.launched = true;
            this.mainLaunch();
        },
        mainLaunch: mainLaunch
    });
    view/MainNav.js
    Code:
    Ext.define('MyApp.view.MainNav', {    
        id: 'mainNav',
        extend: 'Ext.NavigationView',
    
        config: {
            items: [{
                id: 'mainNavList',
                xtype: 'list',
                title: 'My Title',
                grouped: true,
                store: {
                    fields: ['name', 'group', 'groupIndex'],
                    data: [{
                        name: 'Twitter News',
                        group: 'General',
                        groupIndex: 1
                    }, {
                        name: 'XXXXXX',
                        group: 'General',
                        groupIndex: 1
                    }, {
                        name: 'XXXXXX',
                        group: 'General',
                        groupIndex: 1
                    }, {
                        name: 'XXXXXX',
                        group: 'Core',
                        groupIndex: 2
                    }, {
                        name: 'XXXXXX',
                        group: 'Core',
                        groupIndex: 2
                    }, {
                        name: 'XXXXXX',
                        group: 'Core',
                        groupIndex: 2
                    }, {
                        name: 'XXXXXX',
                        group: 'Core',
                        groupIndex: 2
                    }, {
                        name: 'XXXXXX',
                        group: 'Rare',
                        groupIndex: 3
                    }, {
                        name: 'XXXXXX',
                        group: 'Rare',
                        groupIndex: 3
                    }, {
                        name: 'XXXXXX',
                        group: 'Rare',
                        groupIndex: 3
                    }, {
                        name: 'XXXXXX',
                        group: 'Misc',
                        groupIndex: 4
                    }, {
                        name: 'XXXXXX',
                        group: 'Misc',
                        groupIndex: 4
                    }],
                    grouper: function (record) {
                        return record.get('groupIndex') + ". " + record.get('group');
                    }
                },
                itemCls: 'mainNavListItem',
                itemTpl: new Ext.XTemplate('<div class="icon {name:this.normalize}"></div>{name}', {
                    normalize: function (value) {
                        return value.replace(/\s/g, "_").toLowerCase();
                    }
                })
            }]
        }
    
    
    });
    Sorry if I should be attaching files instead of pasting code. I'm new to the forum (and Sencha). Anyway and again, the code works fine using builds/
    sencha-touch-all-debug.js but not with sencha-touch-debug.js.