Node.js, Express, Jade & Template in Package

3
有没有可能将express应用程序的模板存储在单独的包中?
在我的用例中,我想要使用一个共享包含全局模板的包,以便所有应用程序都具有相同的外观和感觉,即使它们作为独立实体在另一个端口或甚至另一台服务器上运行。本地内容模板可以存在于应用程序中,因此我所寻找的就是一种在多个应用程序之间共享这种代码的方法。
更进一步,我正在考虑皮肤包,这些包可以覆盖默认模板。一旦安装在“模板包”中,它可以改变使用核心模板的所有应用程序的外观和感觉。
有没有一种不必放弃express舒适性就能实现这一点的方法?
cu Roman

非常有趣的问题。例如,它是否类似于Django模板系统 - verybadalloc
有点像那个建议。我考虑创建一个核心应用程序,提供主模板并发现所有其他应用程序,甚至可能启动它们。但是假设我有一个提供维基的应用程序和另一个提供博客的应用程序。用户使用维基应用程序或博客应用程序,而不是直接使用核心应用程序。 - user673046
1个回答

1
这可以通过使用express实现。你可以将整个应用程序对象挂载到特定路由上(包括所有路由和中间件)。
var express = require('express');
var coreApp = express();
var blogApp = express();
var wikiApp = express();

// init blogApp and wikiApp with middleware and routes

coreApp.use('/blog', blogApp);
coreApp.use('/wiki', wikiApp);

现在,您可以将模板安装到这些模块化应用程序中,然后将它们安装到核心应用程序中。
以下是来自Express创作者的屏幕录像,名为modular web applications

核心应用程序中有多少代码可以与其他应用程序共享?你能分享视图吗? - verybadalloc

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接