Я пытаюсь разрешить ад обратного вызова, используя метод именованных функций, но обратные вызовы не работают должным образом. Скорее ошибка стоит TypeError: callback is not a function
. Я предоставляю приведенный ниже код и даю встроенные комментарии для отображения ошибочных строк .
function displayWorks(works) {
console.log(`Username: ${works.user} has [${works.work}] works`);
}
function getWorks(user) {
console.log("User", user);
getWorks(user, displayWorks);
}
console.log("Before");
getUser(1, getWorks);
console.log("After");
function getUser(id, callback) {
setTimeout(() => {
console.log("Reading users from Database");
callback({id: id, gitHubUserName: 'John Doe'}) // callback not working
}, 2000);
}
function getRepositories(username, callback) {
setTimeout(() => {
console.log("Reading HowToWork.Com API");
var works = {userName: username, works: ['work1', 'work2', 'work3']};
callback(works); // not working
}, 2000);
}
Редактировать 1: Я использую версию NodeJ v6.14.3. Это проблема для версии.