let sql = knex.select().table('user');
sql.on('query-response', (res)=>{
var result = res;
var option = {};
result.forEach(element =>{
element.designation = [];
let sql1 = knex.select().table('designation').leftJoin('user', function(){
this.on('user.id', '=', 'designation.user_id');
});
sql1.on('query-response', (res)=>{
element.designation = res;
}).catch((err)=>{
})
})
option.response = result;
option.status = 200;
}).catch((err)=>{
option.response = err;
option.status = 500;
})
Приведенный выше код я написал с помощью построителя запросов knex и хочу напечатать один ответ. Но проблема в том, что он помещает значение массива в функцию обратного вызова, но когда я утешаюсь снаружи, он показывает пустой массив. Я не мог понять, является ли мой поток кода неправильным или это из-за функции обратного вызова, которую я использовал. В любом случае, есть ли другой способ, где я могу получить доступ к заданному значению вне функции обратного вызова?