1. #1
    Sencha User
    Join Date
    Feb 2012
    Posts
    1
    Vote Rating
    0
    toddlee is on a distinguished road

      0  

    Default Unanswered: View reference getter undefined

    Unanswered: View reference getter undefined


    Hi,
    I'm pretty new to Sencha Touch 2 and trying to get used to it.

    I'm having a weird issue where I get the following error when I try to use getter for a ref that I defined.

    Code:
    Ext.define('my.controller.Tests', {
        extend: 'Ext.app.Controller',
        views: [
            'test.Create',
            'test.SelectList',
        ],
        config: {
            'refs': {
                selectList: '#selectList',  // I tried selectList (xtype)
                createForm: '#createForm',
            },
            'control': {
                '.user': {
                    focus: 'showOverlay'
                }
            },
    ...
        showOverlay: function() {
            var a = this.getCreateForm();
            a.setCentered(true); // this works.
    
            overlay = this.getSelectList();
            overlay.setCentered(true); // this doesn't work. overlay is undefined.
            overlay.show();
        }
    
    
    
    ...
    createForm is a formpanel in a panel and selectList is a custom class extending Ext.List.
    The only difference I see is that getCreateForm() refers to non-top-level view and getSelectList() refers to a top-level view.

    Code:
    Ext.define('my.view.test.SelectList', {
        extend: 'Ext.Panel',
        alias: 'widget.selectList',
        id: 'selectList',
    ...
    });
    
    Ext.define('my.view.test.Create', {
        extend: 'Ext.Panel',
        alias: 'widget.whatever',
        config: {
            items: [
                {
                    title: 'Create User',
                    xtype: 'formpanel',
                    id: 'createForm',
    ...
    });
    I'm really frustrated.
    Please let me know what I'm doing wrong.

  2. #2
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    37,330
    Answers
    3541
    Vote Rating
    847
    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


    I would do it but the id in the SelectList class needs to be in the config object. I personally would stay away from setting an id especially in Ext.define.
    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.

Thread Participants: 1