Hybrid View

  1. #1
    Sencha User
    Join Date
    Sep 2012
    Posts
    65
    Answers
    7
    Vote Rating
    1
    warrean is on a distinguished road

      0  

    Default Answered: Extending class: set Scope when calling parent's methods

    Answered: Extending class: set Scope when calling parent's methods


    Hey,

    Why is the output of '1: ' not 'Parent'? How can I set the scope right?

    I can't use method '2:' because then I don't have access to any of the Refs neither!

    Code:
    Ext.define('Parent', {
     extend: 'Ext.app.Controller',
     getName: function() {
         return Ext.getClassName(this);
     }
    }
    Code:
    Ext.define('Child', {
        extend: 'Parent',
        doSomething: function() {
             console.log( '1: ' + this.getName() );
             console.log( '2: ' + this.superclass.getName() );
        }
    }

  2. This is how JavaScript works, the scope is the current scope which is the Child unless you change it with call or apply.

    Code:
    fn.call(scope, arg1, arg2);
    fn.apply(scope, [arg1, arg2])

  3. #2
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    36,522
    Answers
    3447
    Vote Rating
    814
    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


    This is how JavaScript works, the scope is the current scope which is the Child unless you change it with call or apply.

    Code:
    fn.call(scope, arg1, arg2);
    fn.apply(scope, [arg1, arg2])
    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