Skip to content Skip to sidebar Skip to footer

ES6: Super Class Doesn't Hold State

I'm trying to figure out what's going on here, as the Parent/Super class does not have data after the initial construction. // imports/server/a-and-b.js class A { constructor(id)

Solution 1:

This is what I found:

class A {
  constructor(id) {
    // make MongoDB call and store inside this variable
    // ...
    this._LocalVariable = FieldFromMongo;
  }
  get LocalVar() {
    return this._LocalVariable;
  }
  GetThatLocalVar() {
    return this._LocalVariable;
  }
}

export class B extends A {
  constructor(id) {
    super(id);
  }
  get Style1() {
    // Reference to Parent get function
    return super.LocalVar; // => This has a undefined value when called
  }
  get Style2() {
    // Reference to Parent property
    return super._LocalVariable; // => This has a undefined value when called
  }
  get Style3() {
    // Reference to local Property that is declared in Parent
    return this._LocalVariable; // => This works
  }
  get Style4() {
    // Reference to Parent without the getter
    return super.GetThatLocalVar(); // => This works
  }
  get GETTHEVAR() {
    return this.TEST; // => This returns 'THIS IS A TEST'
  }
}

So basically the thing that works is Style3 Style 4 work.


Post a Comment for "ES6: Super Class Doesn't Hold State"