ES6 javascript Подкласс не наследует все переменные?

KyleM спросил: 14 ноября 2017 в 07:11 в: javascript

Итак, в основном у меня есть класс es6 js, в котором переменные конструктора создаются и присваиваются в методе класса. Позже я создаю подкласс, который расширяет первый и передает все переменные, которые я хочу использовать, конструктору подкласса и впоследствии методу super. После того, как эта переменная верна, а другая не определена, обе они передаются и регистрируются одинаково. Почему это будет неопределенным ??

class socket {
  constructor() {
    this.socket = {};
    this.base = '/*string*/';
    this.mainIndex;
    this.dashboard;
    this.user_id;
  }  socket_start() {    //do stuff here to start websocket    self.socket.onmessage = function ( event ) {
      let stream = JSON.parse( event.data );
      this.mainIndex = stream.url.mainIndex; 
      this.dashboard = stream.url.dashboard; 
      this.user_id = stream.staffInfo.id; 
      this.base = stream.base;        console.log( this.user_id ); // "1"
      console.log( this.base); // "string"
    }
  }
}class main extends socket {
  constructor( user_id, base, socket, mainIndex, dashboard ) {
  super( user_id, base, socket, mainIndex, dashboard );  console.log( this.user_id ); // undefined   <--????
  console.log( this.base); // "string"
}

0 ответов