我正在研究 seneca js 以在节点 js 中设置 web 应用程序。我已经设置了路由,并且还使用 seneca 中的模式匹配检查了不同的操作,并且它可以工作。
我已将 seneca 与 express 集成为中间件。现在我想在 seneca 动作中渲染视图模板。但是我在互联网上找不到任何可以帮助我的东西。下面是我的示例代码..
路由.js
'use strict'
module.exports = [
{
prefix: '/user',
pin: 'role:user,cmd:*',
map: {
list_user: true,
add_user: {
GET: true,
}
}
},
{
prefix: '/admin',
pin: 'role:admin,cmd:*',
map: {
validate: {
GET: true,
alias: '/manage'
}
}
}
]
服务器.js
var seneca = require('seneca')();
connection = require('./db.js');
seneca.use('./user.js');
var Routes = require('./routes.js');
var Express = require('express')
var Web = require('seneca-web')
var config = {
routes: Routes,
adapter: require('seneca-web-adapter-express'),
context: Express()
}
seneca
.use(Web, config)
.ready(() => {
server = seneca.export('web/context')()
var router = Express.Router();
server.set('view engine', 'ejs');
server.get('/user', function (req, res) {
res.render('view.ejs',{title:"testing"})
})
server.listen('4000', () => {
console.log('server started on: 4000')
})
})
我添加了一个 http 调用“ http://127.0.0.1:4000/user ”来使用 express js 呈现一个视图。我也可以用特定的 seneca 动作来映射它。
但我想让它动态化,所以我可以使用 routes.js 来提及特定操作的视图名称(如果有)。
请帮助我实现这一目标或指导我在哪里做错了。