У меня есть следующий класс в TypeScript.
class DBService {
constructor(path: string) {
this.initDatabase(path);
}
public db: lowDb.LowdbAsync<DatabaseSchema>;
private async initDatabase(path: string) {
const adapter = new FileAsync(path);
this.db = await lowDb(adapter);
await this.db
.defaults({
sites: [],
events: [],
})
.write();
}
}
export default DBService;
Теперь, когда я хочу использовать его, я создаю новый экземпляр класса, как этот.
const dbservice = new DBService(join(DB_DIR, 'db.json'));
Но я бы хотел получить прямой доступ к свойству publi c db
внутри класса.
Я пробовал это с таким разрушением объектов. Но при этом БД всегда неопределенна.
const { db } = new DBService(join(DB_DIR, 'db.json'));
console.log(db) // undefined
Мне нужно всегда обращаться к свойству с помощью указанного класса.
const dbservice = new DBService(join(DB_DIR, 'db.json'));
console.log(dbservice.db) // works
Разве невозможно деструктурировать свойство publi c класса в JS / TS?