Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.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
如何在jade中编写javascript块?_Javascript_Node.js_Templates_Pug - Fatal编程技术网

如何在jade中编写javascript块?

如何在jade中编写javascript块?,javascript,node.js,templates,pug,Javascript,Node.js,Templates,Pug,我需要在我的jade模板中编写一些javascript代码,但不要将其包装在脚本标记中: body container p - var obj = { - "price": 100, - "qty: 3 -}; - var result = obj.price * obj.qty; Result is: !{result}. 在上面的代码中

我需要在我的jade模板中编写一些javascript代码,但不要将其包装在脚本标记中:

body
   container
       p
          - var obj = {
          -    "price": 100,
          -    "qty: 3
          -};

          - var result = obj.price * obj.qty;

          Result is: !{result}.

在上面的代码中,我做了一些计算并输出结果。所有这些都可以正常工作,但由于存在多个
-
而看起来很难看。jade是否支持在不使用多行代码的情况下编写javascript的某些块?-

jade目前不支持将多行代码串在一起。每个
-
后面都应该有一个完整的语句

obj
必须在一个步骤中初始化:

p
    - var obj = { price: 100, qty: 3 };
或在多个语句中设置:

p
    - var obj = {};
    - obj.price = 100;
    - obj.qty = 3;
或者,定义为“局部变量”以进行渲染:

var jade = require('jade');

var html = jade.renderFile(__dirname + '/template.jade', {
    obj: {
        price: 100,
        qty: 3
    }
});

还要注意,
结果…
将需要一个
|
前缀,当它在自己的行上时,将其表示为

p
    | Result is #{result}

谢谢你的完整回答。您知道在jade中添加此功能的计划吗?
p
    | Result is #{result}