如何编译防尘js服务器端为IE7渲染

我有一个使用了很多灰尘模板的应用程序。 IE8 +和其他现代浏览器(如Chrome)在客户端渲染方面没有问题,但在IE7和以下版本中无法正常工作。

有没有办法在服务器上运行dust.js并返回一个编译模板?

你可以用Node.JS来做到这一点…

npm install dustjs-linkedin(亲自使用LinkedIn的粉尘分叉 )

 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); 

显然,这仅仅是一个例子,在一个真正的脚本中,你可能会使用一些其他的机制,也许expression。 你也可以使用'fs'模块从文件加载模板。

在客户端请求从服务器编译的脚本,您的模板将自动注册,所以你可以做:

 dust.render('mytemplate', {name : 'World'}, function(err, str){ ... }); 

您可以使用duster.js在服务器上观察和预编译模板。

这篇博文 (来自作者)解释了这将如何工作。

更新 :如果您使用用于Visual Studio的NodeJs工具进行开发,那么您可以使用此扩展。

我发布了一个Visual Studio扩展,它会在您保存文件后自动在服务器上生成预编译的模板。 你所要做的就是在你的页面中包含生成的.js文件。 Checkout DustJs编译模板生成器 。

用法在这里用屏幕截图解释。