我有一个NodeJS + Angular + MySQL webapp。有没有办法可以将KeystoneJS仅用于博客?
我目前正在将某些页面作为静态快速页面提供,有些作为Angular应用程序启用了UI路由器的HTML5模式。
// Serves static pages generated by Express
app.use('/staticPage', staticPage);
app.use('/anotherStaticPage', anotherStaticPage);
// Serves Angular App
app.all('/*', function(req, res, next) {
res.sendFile(__dirname + '/ui/index.html');
});
/*
Need a way to also serve a blog powered by KeystonJS
It should be accessed at /blog/:postTitle
*/
如果可能的话,我更喜欢保留现有的设置,只需在其上添加Keystone。
答案 0 :(得分:1)
有两种方法可以做到。
(1)安装keystone,并在keystones索引路由器内,添加你的两个静态路由器和一个app路由器。
(2)Add keystone to existing Express App。
但无论keystoneJS如何。你必须删除angularApp的通用处理程序。
app.all('/app/*', function(req, res, next) {...});
否则必须在Angular之上添加与博客相关的新路由器,就像你到目前为止所做的那样。