【发布时间】:2014-05-13 11:49:56
【问题描述】:
我有一个使用大量灰尘模板的应用程序。 IE8+ 和其他现代浏览器(例如 Chrome)在客户端渲染方面没有问题,但在 IE7 及以下版本中无法正常工作。
有没有办法在服务端运行dust.js并返回编译好的模板?
【问题讨论】:
标签: node.js internet-explorer server-side dust.js ie7.js
我有一个使用大量灰尘模板的应用程序。 IE8+ 和其他现代浏览器(例如 Chrome)在客户端渲染方面没有问题,但在 IE7 及以下版本中无法正常工作。
有没有办法在服务端运行dust.js并返回编译好的模板?
【问题讨论】:
标签: node.js internet-explorer server-side dust.js ie7.js
您可以使用 Node.JS...
npm install dustjs-linkedin - (个人使用LinkedIn fork of dust)
var http = require('http');
var dust = require('dustjs-linkedin');
http.createServer(function (req, res) {
var compiled = dust.compile('<h1>Hello {name}</h1>', 'mytemplate');
res.end(compiled);
}).listen(80);
显然这只是一个例子,在一个真实的脚本中你可能会使用其他一些机制,也许是 Express。您还可以使用“fs”模块从文件中加载模板。
在客户端向服务器请求编译好的脚本,你的模板会自动注册,所以你可以这样做:
dust.render('mytemplate', {name : 'World'}, function(err, str){
...
});
【讨论】:
您可以使用duster.js 在服务器上观看和预编译模板。
blog post(来自作者)解释了这是如何工作的。
更新:如果你使用 NodeJs Tools for Visual Studio 进行开发,那么你可以使用这个扩展。
我发布了一个 Visual Studio 扩展,它会在您保存文件后立即在服务器上自动生成预编译模板。您所要做的就是在您的页面中包含生成的.js 文件。结帐DustJs Compiled Template Generator。
用法在here 有截图说明。
【讨论】: