Как отправить данные из одного файла приложения. js в файл index.e js в Маршрутах - PullRequest
0 голосов
/ 26 апреля 2020

ошибка в том, что моя переменная блогов, которую я передаю как объект, который содержит данные для индексной страницы, не определена. код для индексной страницы:

Заранее спасибо.

//INDEX ROUTE
app.get("/blogs", function (req, res){
    Blog.find({}, function (err, blogs) {
        if (err) {
            console.log("ERROR!");
        } else {
            res.render("index", {blogs: blogs});
        }
    });
});

1 Ответ

0 голосов
/ 26 апреля 2020

, если вы используете mon goose, find метод, возвращающий обещание, поэтому сделайте функцию async и используйте await перед использованием find:

app.get("/blogs", function async (req, res){
  let blogs = await Blogs.find({});
  res.render("index", {blogs});
});

или используя .then для получения данных из find метода:

app.get("/blogs", function (req, res){
  Blog.find({}).then(blogs=>{
     res.render("index", {blogs}); //if key and value are the same you can skip passing key
  }).catch(err=>{
     console.log(err)
  });
});
...