MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Express/Node.js грешка:Референтна грешка:Res не е дефиниран

  1. Можете да извикате app.render на основно ниво и res.render само вътре в route/middleware.
  2. app.render винаги връща html във функцията за обратно извикване, докато res.render прави това само когато сте посочили функцията за обратно извикване като трети параметър. Ако извикате res.render без трети параметър/функция за обратно извикване, изобразеният html се изпраща на клиента с код на състоянието 200.

Разгледайте следните примери.

app.render

app.render('index', {title: 'res vs app render'}, function(err, html) {
    console.log(html)
});

res.render без трети параметър

app.get('/render', function(req, res) {
    res.render('index', {title: 'res vs app render'})
})

res.render с трети параметър

app.get('/render', function(req, res) {
    res.render('index', {title: 'res vs app render'}, function(err, html) {
        console.log(html);
        res.send('done');
    })
})
  1. res.render използва app.render вътрешно за изобразяване на шаблонни файлове.
  2. can't set headers означава, че не можете да влезете в тялото.
  3. res.render() функцията компилира вашия шаблон (моля, не използвайте ejs), вмъква локални там и създава html изход от тези две неща.

// тук задавате всички шаблони да се намират в /views директория

app.set('views', __dirname + '/views');

// here you set that you're using `ejs` template engine, and the
// default extension is `ejs`
app.set('view engine', 'ejs');

// here you render `local` template
response.render("local", {local: local_json});

И така, пътят на шаблона е views/ (първа част) + local (втора част) + .ejs (трета част) ===views/local.ejs



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да актуализирате колекция MongoDB автоматично всяка полунощ?

  2. Множество връзки на node-mongodb-native

  3. MongoDB deleteOne()

  4. Грешка при агрегирането на MongoDB:Обектът на спецификацията на етапа на тръбопровода трябва да съдържа точно едно поле

  5. Проблеми при инсталиране на Mongodb на Ubuntu 20.04