将parameter passing给Jade文件时,我可以(如何)使用Jade简写?
我正在玩Nodejs,并想知道我是否可以用玉石风格简写(即
a(href='/page?name=contact')
作为传递给玉文件的参数的一部分。
举例来说,我想写一些(从忍者商店的例子)的行:
var name = req.query.name; var contents = { about: 'a(href="/page?name=about") Ninja Store \n sells the coolest ninja stuff in the world. Anyone shopping here is cool.', contact: 'You can contact us at <address><strong>Ninja Store</strong>,<br>1, World Ninja Headquarters,<br>Ninja Avenue,<br>NIN80B7-JP,<br>Nihongo.</address>' }; res.render('page', { title: 'Ninja Store - ' + name, username: req.session.username, content:contents[name] });
有没有一种机制可以用来编写这种风格的代码?
你必须编译string :
var jade = require('jade'); // ... var contents = { about: jade.compile('a(href="/page?name=about") ...')(), contact: 'You can contact us at ...' };
但是,您可以在视图之间切换,而不是将其存储在contents
:
res.render(name, { title: 'Ninja Store - ' + name, username: req.session.username });
Aand,你仍然可以通过模板inheritance将它们包含在page.jade
。
page.jade:
#container block contents
about.jade:
inherits page block contents a(href="/page?name=about") Ninja Store span sells the coolest ninja stuff in the world. Anyone shopping here is cool.