我遇到了以下问题:
1)class.js中的两个类
Class1 {
//here the constructor
constructor(connection){
this.connection = connection
}
//here a class1 prop
returnConnection(){
return this.connection
}
}
// class 2
Class2 extends Class1 {
getClass1ConstructorConnection{
return super.returnConnection();
}
}
module.exports = {Class1, Class2}
现在在我的路线文件中我声明了class1
var { Class1 } = require(./class.js);
var { Class2 } = require(./class.js);
var class1Object = new Class1({connectionObj})
之后,我宣布了class2
var class2Object = new Class2();
如果我尝试像这样的console.log class2 prop
console.log(class2Object.getClass1ConstructorConnection())
未定义。
现在,我知道最好的方法是将connectionObj声明为类2的本机构造函数,但由于一系列原因我不能,所以,有没有办法通过a继承构造函数变量值父类在主应用程序工作流程中声明后?
感谢您的帮助!
答案 0 :(得分:1)
因为您从未将连接传递给基类。 您必须将连接传递给构造函数
var class2Object = new Class2({connectionObj});