Javascript nodejs版本12在另一个方法中调用方法
嗨,我想在同一类的另一个方法中调用一个方法Javascript nodejs版本12在另一个方法中调用方法,javascript,node.js,Javascript,Node.js,嗨,我想在同一类的另一个方法中调用一个方法 // authentication.js var Usermgmt = require('./usermgmt'); class authentication extends Usermgmt { #session = New Object(); constructor() { super(); } auth(username, password) { console.log(value);
// authentication.js
var Usermgmt = require('./usermgmt');
class authentication extends Usermgmt {
#session = New Object();
constructor() {
super();
}
auth(username, password) {
console.log(value);
return true;
}
_setSession() {
this.#session.name = "Session Name";
this.test();
}
}
module.exports = authentication;
我得到错误TypeError:无法读取null的属性'\u B'
有没有办法避免这种情况?我还想调用父类中的函数
也可以找到这个例子
这就是我想做的。但是#在我的类中不起作用,我得到了SyntaxError:Unexpected token'('
当我在同一类的方法中调用一个方法时,我得到了TypeError:cannotreadproperty of null看起来不错,您需要实例化一个新的a副本,并在类上调用a方法
A类{
构造函数(){
}
_B(价值){
console.log(值);
}
(){
本试验(“试验”);
}
}
常数a=新的a()
a、 a()//测试
如何调用'class'的对象A
(注意到JS des实际上不知道结构类,但提供'class'关键字作为语法糖)?您的问题可能是如何调用A()
method。如果您显示特定的代码,我们可以帮助您更好地纠正错误。如果您将其称为a.a()
其中a
是a
的一个实例,它可以工作。但是,如果您将a.a
作为函数引用或回调传递,并让其他东西调用它,如果不对调用代码进行一些调整,它将无法正常工作。请向我们显示调用代码。好的,我编辑它。也许现在有更好的理解了ing.#setSession方法变得更复杂,我会避免双重代码。另一个问题是#setSession作为私有方法不起作用。从ECMAScript ist应该起作用,因为您看到我不起作用。我编辑了上面的代码。
// usermgmt.js
class usermgmt {
constructor() {
}
test(){
console.log("test parent");
return "test";
}
}
module.exports = usermgmt;
// index.js
var authentication = require('authentication');
let auth = new authentication();
if(auth.auth(req.body.username, req.body.password)) {
console.log("all fine");
}
class Ex22_Base {
#privateMethod() { return 42; }
}
class Ex22_Sub extends Ex22_Base {
#privateMethod() {
assertThrows(() => super.#privateMethod(), TypeError);
}
#privateMethodTwo() {
this.#privateMethod();
}
publicMethod() {
this.#privateMethodTwo();
}
constructor() {
this.#privateMethod();
}
}