В настройках ExpressJS у меня есть server.js
, где я делаю следующее:
import { call_method } from '../hereIam.mjs';
const process_db = async () => {
console.log(this); // undefined
call_method(this);
};
console.log(this) // undefined
process_db();
А затем из hereIam.mjs
я хочу вызвать родительский метод, но это не определено
export const call_method = parent_this => console.log(parent_this); // undefined
Я пытался включить классы в server.js, пытаясь заставить иметь this
class AppServer {
constructor() {
console.log(this)
}
const process_db = async () => call_method(this);
}
Но кажется, что функции стрелок внутри классов не компилируются в (экспериментальный) NodeJS (это должен быть другой вопрос)
EDITED
Как я могу это сделать, избегая обозначения стрелками, чтобы иметь возможность использовать классы внутри Express, изатем создать экземпляр класса, который предоставляет this
.
class AppServer {
async process_db() {call_method(this)};
}
let server = new AppServer();
server.process_db();
. Вопрос: единственный способ получить ссылку this
- использование объектов / классов?