node.js Ошибка типа: не удается прочитать свойство ‘replace’ из undefind

#node.js

#node.js

Вопрос:

Комментарии:

1. что console.log(err) говорит? — Ошибка в первом .replace() . Возможно, произошла ошибка.

2. да. .replace() — это ошибка, но этот код совпадает с книгой. Я не знаю, почему это ошибка. как использовать это слово?

Ответ №1:

Вы не обрабатываете ошибки!
У вас ошибка при чтении файла.

 var on404 = function (req, res, next) {
  fs.readFile("server/404.html", "utf-8", function (err, file) {
    if(err) return next(err); // If error than do not proceed 
    //
    // YOU OTHER CODE GOES HERE ....
    // 
    // ...
  });
}
  

К вашему СВЕДЕНИЮ: Нет необходимости в else, так как если оно вводится if , то выполнение функции заканчивается return инструкцией.