В чем разница между использованием и не использование функции обратного вызова в следующем конкретном примере?Javascript

Форум по Javascript
Ответить
Anonymous
 В чем разница между использованием и не использование функции обратного вызова в следующем конкретном примере?

Сообщение Anonymous »


Определение о функции DB заключается в следующем, я буду использовать db.async.all () < /code> позже: < /p>
const sqlite3 = require("sqlite3").verbose();
const path = require("path");
var db = new sqlite3.Database(path.join(__dirname,"blog.sqlite3"));
db.async = {};
db.async.all = (sql,params)=>{
return new Promise((resolve,reject)=>{
db.all(sql,params,(err,rows)=>{
resolve({err,rows});
});
});
}
< /code>
< /li>
Первый способ его использовать: < /p>
router.post("/login",async(req,res)=>{
let { account,password } = req.body;
let {err,rows} = await db.async.all("select * from `admin` where `account` = ? AND `password` = ?",[account,password]);
console.log(err);
console.log(rows);
}
< /code>
< /li>
Второй способ его использовать: < /p>
router.post("/login",(req,res)=>{
let { account,password } = req.body;
db.async.all("select * from `admin` where `account` = ? AND `password` = ?",[account,password],(err,rows)=>{
console.log(err);
console.log(rows);
});
< /code>
< /li>
Результат тестирования: < /p>
Когда я использую первый метод, программа может вывести правильно , но когда я использую второй метод, программа продолжает давать мне подсказку «Загрузка». < /p>
< /li>
< /ol>
На мой взгляд Второй способ просто использовать функцию обратного вызова, и он должен иметь тот же выход, сравниваемый с первым способом. Так почему же у них нет такого же результата?

Подробнее здесь: https://stackoverflow.com/questions/794 ... -in-the-fo
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»