Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Templates 防止服务器端jade解释浏览器jade模板_Templates_Browser_Express_Pug - Fatal编程技术网

Templates 防止服务器端jade解释浏览器jade模板

Templates 防止服务器端jade解释浏览器jade模板,templates,browser,express,pug,Templates,Browser,Express,Pug,我想将jade模板从服务器中的jade模板传递到浏览器 我的问题是jade模板目前由服务器解释 以下是我如何声明模板: script#entry-row(type='text/template') tr td= number td= sum + '€' td= description || '' td= moment(date, 'YYYY-MM-DDTHH:mm:ss:SSSZ').format('dddd DD MMMM YYYY') td

我想将jade模板从服务器中的jade模板传递到浏览器

我的问题是jade模板目前由服务器解释

以下是我如何声明模板:

script#entry-row(type='text/template')
  tr
    td= number
    td= sum + '€'
    td= description || '' 
    td= moment(date, 'YYYY-MM-DDTHH:mm:ss:SSSZ').format('dddd DD MMMM YYYY') 
    td 
      span.label= category
    td 
      input(type='checkbox', disabled='disabled', checked=shared)
我找到的唯一解决方案是在管线开始处添加管道,但这不是一个好方法:

script#entry-row(type='text/template')
  | tr
  |   td= number
  |   td= sum + '€'
  |   td= description || '' 
  |   td= moment(date, 'YYYY-MM-DDTHH:mm:ss:SSSZ').format('dddd DD MMMM YYYY') 
  |   td 
  |     span.label= category
  |   td 
  |     input(type='checkbox', disabled='disabled', checked=shared)
还有其他想法吗?

正在使用吗

一个可能的解决办法是。另见讨论

您可以将资产挂钩到Express中:

assets.on('complete', function() {
    var app = express.createServer();
    app.configure(function() {
        app.use(assets);  // that's all you need to do
    });
    app.listen(8000);
});
要创建您的Jade资产,请执行以下操作:

var assets = new AssetRack([
    new rack.JadeAsset({
        url: '/templates.js',
        dirname: __dirname + '/templates'
    })
]);
你在用什么

一个可能的解决办法是。另见讨论

您可以将资产挂钩到Express中:

assets.on('complete', function() {
    var app = express.createServer();
    app.configure(function() {
        app.use(assets);  // that's all you need to do
    });
    app.listen(8000);
});
要创建您的Jade资产,请执行以下操作:

var assets = new AssetRack([
    new rack.JadeAsset({
        url: '/templates.js',
        dirname: __dirname + '/templates'
    })
]);

我最近在这上面纠缠了好几天,我找到了一个更好的解决办法

您可以将jade部分模板重命名为html扩展名,并将其包含在主模板中

玉页。所以jade不会在服务器端编译包含的部分,而您

在浏览器端得到了您想要的

下面是我的示例编码:

索引。jade:

以及部分模板/tweet.html


我最近在这上面纠缠了好几天,我找到了一个更好的解决办法

您可以将jade部分模板重命名为html扩展名,并将其包含在主模板中

玉页。所以jade不会在服务器端编译包含的部分,而您

在浏览器端得到了您想要的

下面是我的示例编码:

索引。jade:

以及部分模板/tweet.html


我更喜欢管道语法。打字稍慢,但很容易阅读和理解。顺便说一下,感谢您分享解决方案。我花了将近半个小时寻找任何可能的解决方案。我更喜欢管道语法。打字稍慢,但很容易阅读和理解。顺便说一下,感谢您分享解决方案。我花了将近半个小时来寻找任何可能的解决方案。我没有时间尝试,但如果成功的话,那就太好了。谢谢,我没有时间尝试,但如果是工作,那就很好了。谢谢