jade 使用 javascript 变量(mongo 模型)
jade using javascript variable (mongo model)
我正在使用 node.js 创建网站并尝试使用在 js 文件中创建的数据模型。
即使在 routes/browse.ts 中调用 res.render() 之后,jade 文件中的迭代结果也不会显示为创建的网页中的结果。尽管 console.log 显示我在 browse.ts 中的 comicArray 不为空,但我在 jade 文件的每个部分中迭代的方式似乎有问题。
这是我的代码,您可以参考:
routes/browse.ts:
// Comic GET request
router.get('/', function(req, res) {
// Saving found comics into the array named 'comics'
comic.comicModel.find({}, function(err, comics){
if (err || !comics) throw err;
res.locals.comicArray = comics.slice(0, 10);
comicArray = res.locals.comicArray;
});
res.render('browse', { title: 'Browse', comicArray: comicArray});
});
views/browse.玉:
extends layout
block content
.row.column.text-centent
h1= title
.listbox
ul
each val in comicArray
li= val.title
models/Comic.ts(漫画的架构):
export var comicSchema = new mongoose.Schema({
title: String,
description: String,
genre: String,
thumbnail: String,
cells: Array,
votes: Number,
views: Number,
comments: Array
});
comic.comicModal.find()
是一个异步函数。您需要在该回调中移动 res.render()
调用。
我正在使用 node.js 创建网站并尝试使用在 js 文件中创建的数据模型。
即使在 routes/browse.ts 中调用 res.render() 之后,jade 文件中的迭代结果也不会显示为创建的网页中的结果。尽管 console.log 显示我在 browse.ts 中的 comicArray 不为空,但我在 jade 文件的每个部分中迭代的方式似乎有问题。 这是我的代码,您可以参考:
routes/browse.ts:
// Comic GET request
router.get('/', function(req, res) {
// Saving found comics into the array named 'comics'
comic.comicModel.find({}, function(err, comics){
if (err || !comics) throw err;
res.locals.comicArray = comics.slice(0, 10);
comicArray = res.locals.comicArray;
});
res.render('browse', { title: 'Browse', comicArray: comicArray});
});
views/browse.玉:
extends layout
block content
.row.column.text-centent
h1= title
.listbox
ul
each val in comicArray
li= val.title
models/Comic.ts(漫画的架构):
export var comicSchema = new mongoose.Schema({
title: String,
description: String,
genre: String,
thumbnail: String,
cells: Array,
votes: Number,
views: Number,
comments: Array
});
comic.comicModal.find()
是一个异步函数。您需要在该回调中移动 res.render()
调用。