1
사용 koa2
ejs
koa-router
, 사용하는 방법 ejs template
다른 미들웨어의 로컬 호스트 ctx.state
ctx.state가 다른 미들웨어로 전달하지 않은 이유는 무엇입니까?
: 3000/관리/usermsg
admin.get('/usermsg', async(ctx) => {
ctx.state.userMsg = {
page: Number(ctx.query.page),
limit: 4,
pages: 0,
count: count
}
var userMsg = ctx.state.userMsg;
ctx.state.users = await new Promise(function(resolve, reject){
userMsg.pages = Math.ceil(userMsg.count/userMsg.limit);
userMsg.page = userMsg.page > userMsg.pages ? userMsg.pages : userMsg.page;
userMsg.page = userMsg.page < 1 ? 1 : userMsg.page;
var skip = (userMsg.page - 1) * userMsg.limit;
User.find().limit(userMsg.limit).skip(skip).exec(function(err, doc){
if(doc){
resolve(doc);
}
if(err){
reject(err);
}
})
})
await ctx.render('admin/usermsg');
})
로컬 호스트 : 3000/따라 βdamin/카테고리
category template
에서
admin.get('/category', async(ctx) => {
await ctx.render('admin/category');
})
, ctx.state.userMsg
을 얻을 수 없습니다.
ctx.state.userMsg
을 category template
에 어떻게 표시해야합니까?
'var userMsg'를 전역으로 설정하십시오. – wrangler