widgets模板系统使用node.js和dust服务器端模板
我正在尝试使用Node.js和Dust作为模板引擎创建一个包含小部件的页面。 我希望小部件尽可能独立,有自己的css、js和html 以下三种方法中哪一种最好?哪一个最快 选项a:仅使用res.render和rendering一次widgets模板系统使用node.js和dust服务器端模板,node.js,widget,express,template-engine,dust.js,Node.js,Widget,Express,Template Engine,Dust.js,我正在尝试使用Node.js和Dust作为模板引擎创建一个包含小部件的页面。 我希望小部件尽可能独立,有自己的css、js和html 以下三种方法中哪一种最好?哪一个最快 选项a:仅使用res.render和rendering一次 pseudo code: 1) call page route (app.get('/', routes.somePage); 2) load config file (say /views/somePage.cfg) listing all widget
pseudo code:
1) call page route (app.get('/', routes.somePage);
2) load config file (say /views/somePage.cfg) listing all widgets on somePage.
3) get widget data if needed (say access another server for the data).
4) build 1 context object and pass to render
5) call res.render with context containing page data + all widget's data
5) somePage template will include partials to build page, including widget partials.
pseudo code:
1) call page route (app.get('/', routes.somePage);
2) load config file (say /views/somePage.cfg) listing all widgets on somePage.
3) use app.render() to render widgets + page (running js to get each widget data)
4) use res.write() to build a complete page.
选项b:使用res.write
pseudo code:
1) call page route (app.get('/', routes.somePage);
2) load config file (say /views/somePage.cfg) listing all widgets on somePage.
3) get widget data if needed (say access another server for the data).
4) build 1 context object and pass to render
5) call res.render with context containing page data + all widget's data
5) somePage template will include partials to build page, including widget partials.
pseudo code:
1) call page route (app.get('/', routes.somePage);
2) load config file (say /views/somePage.cfg) listing all widgets on somePage.
3) use app.render() to render widgets + page (running js to get each widget data)
4) use res.write() to build a complete page.
选项c:使用帮助程序
pseudo code:
1) call page route (app.get('/', routes.somePage);
2) use app.render()
3) use custom helper to render different widgets.
custom helper will actually grab the data and might use app.render inside to build
the widget during render time..
我经历了一些事情,在讨论了Node.js IRC之后,我结束了对选项a的讨论。似乎这是正确的路径,构建一个主上下文并将其提供给一个模板 我最终构建了一个全局上下文对象,并将某些小部件添加到它的json中。 它就像一个符咒