Articles of swig模板

用Swig呈现静态文件

我试图用NodeJS开发一个Blog。 我find了一个不错的HTML博客主题 ,并将所有文件都放到了视图文件夹中。 这是app.js的内容 var express = require('express'), app = express(), cons = require('consolidate'); app.engine('html', cons.swig); app.set('view engine', 'html'); app.set('views', __dirname + '/views'); //app.use(express.static(__dirname + '/views')); app.use(express.bodyParser()); // I'm using Express 3, not 4. app.use(app.router); app.get('/', function(req,res){ res.render('index', {menu_items:[{"link":"#","text":"TXT"},{"link":"#","text":"TXT"}]}); }); app.listen(3000); 此代码呈现index.html,并在index.html中呈现menu_items 。 但它并不像css和js那样呈现静态文件。 为了渲染它们,我正在评论app.use(express.static(__ dirname +'/ views')); 线。 这一次是渲染静态文件,但不是在index.html中渲染menu_itemsvariables。 您可以看到此存储库中的所有文件。 你能告诉我我错过了什么吗? **更新1 **我已经添加了这些行而不是那个注释行 app.use('/css', […]

Node.js表示应用程序caching/缓慢页面加载(swig模板引擎)

我正在将我的apache站点(在bluehost上)转移到node.js(在heroku上),并且注意到它运行速度比较慢。 我想知道这是一个caching问题,或者我可能做错了什么。 这里是关于heroku的网站: http : //ak-web-prod.herokuapp.com/ 这里是bluehost上的网站: http : //ardentkid.com 如果你注意到,页面在浏览网站时会闪烁白色(这就是为什么我认为这可能是一个caching问题)。 我为以下设置了快速configuration: app.enable('view cache'); 似乎没有改变任何东西。 有人有主意吗? 这是我的应用程序configuration app.configure(function(){ app.set('config', config); app.set('views', __dirname + '/views'); app.set('view engine', 'html'); app.set('db', db); app.set('port', process.env.PORT || 3000); app.engine('.html', cons.swig); app.use(express.logger('dev')) app.use(express.favicon(__dirname + '/public/img/favicon.ico')); app.use(express.cookieParser()) app.use(express.bodyParser()) //enables req.body app.use(express.methodOverride()) //enables app.put and app.delete (can also just use app.post) app.use(express.session({ secret: […]

如何使用Express 4呈现Swig模板?

我无法使用Express for Node使用Swig模板。 我得到以下错误: Error: Failed to lookup view "index" in views directory Swig模板没有被编译到.html文件中 我的代码如下: var express = require('express'); var cons = require('consolidate'); var swig = require('swig'); var app = express(); //Set template engine app.engine('html', cons.swig); app.set('view engine', 'html'); app.set('views', __dirname + '/views') // Disable Express's and Swig Cache app.set('view cache', false); swig.setDefaults({ cache: false […]

在Node.js的Swig模板中使用什么自动转义?

我正在尝试编写一个构build在Express上的行程应用程序。 Swig是模板引擎。 我对Swig的autoescapefunction感到困惑。 它究竟做了什么? Swig 文档示例: "Control auto-escaping of variable output from within your templates." // myvar = '<foo>'; {% autoescape true %}{{ myvar }}{% endautoescape %} // => <foo> {% autoescape false %}{{ myvar }}{% endautoescape %} // => <foo> 我的代码: <script> {% autoescape false %} var all_hotels = {{ hotels | json }}; […]

nodeJS + Swig模板将variables传递给javascript

有没有什么办法使用快递+ swig模板nodeJS从服务器端传递variables到客户端JavaScript? 我知道它可以在Jade中完成,但是我宁愿使用更接近HTML的模板引擎。 谢谢你的帮助!

Node.JS合并和Swig

我试图设置整合与节点(Express v3.1.0),使用Swig。 我不断收到错误 错误:在Module.require(module.js:362:17)上的Function.Module._load(module.js:280:25)处的Function.Module._resolveFilename(module.js:338:15)处找不到模块“swig” )在/ home / jamie / node_modules / consolidation /下的Function.exports.swig.render(/home/jamie/node_modules/consolidate/lib/consolidate.js:237:50)处的require(module.js:378:17) lib / consolidate.js:144:25 at /home/jamie/node_modules/consolidate/lib/consolidate.js:97:5 at fs.readFile(fs.js:176:14)at Object.oncomplete(fs.js: 297:15) 在顶部,我是这样设置的 var express = require('express'); var cons = require('consolidate'); // assign the swig engine to .html files console.log(cons.swig); app.engine('html', cons.swig); // set .html as the default extension app.set('view engine', 'html'); app.set('views', __dirname + […]