lang添加清单文件
我想知道如何使用jade-lang和express来将清单文件添加到node.js站点。 我发现这是github中的一个问题239。 我的问题是,如何在无需等待问题解决的情况下将一些数据添加到缓冲区中。
谢谢!
我很快就会在我的一个项目中需要这个,所以我很想好好试一试。 如果您尝试在单个文件中执行此操作,则会出现问题:
!!! 5
if useManifest
html(lang="en", manifest="cache.manifest")
else
html(lang="en")
head
title sample title
body
p some content...
这渲染了一个混乱的HTML。 但是,以下似乎工作得很好(这绝对是一种解决方法):
在routesindex.js
:
exports.index = function(req, res){
res.render('testJade', { layout: false, useManifest: true })
};
在viewstestJadeInclude.jade
:
!!!5
if useManifest
html(lang="en", manifest="cache.manifest")
block content
else
html(lang="en")
block content
最后,在viewstestJade.jade
:
include testJadeInclude
block append content
head
title sample title
body
p some content
然后根据您的意愿(例如,如果客户端是移动浏览器,或其他),您将useManifest设置为true或false。
而我只是测试了另一种可能性,这是另一种方式。 您可以将内容文件包含在doctype-html文件中,而不是在内容文件中包含doctype和html标记(通过块追加),因此它看起来像这样:
!!! 5
if useManifest
html(lang="en", manifest="cache.manifest")
include contentFile
else
html(lang="en")
include contentFile
有一个简单的方法可以在玉器中做到这一点:只要试试这个
html(manifest=_condition_ ? "cache.manifest" : undefined)
此代码检查条件是否为真。 如果是,则清单设置为“cache.manifest”。 否则,它将被设置为undefined
并被删除。