将变量从jade文件传递到javascript文件

时间:2014-06-16 19:10:08

标签: javascript node.js express

我正在制作节点快递应用。我试图将值从jade传递给javascript文件。

在我使用的服务器端:

res.render('index', { title: 'Title', test: 1 });

在我的index.jade文件中,我有以下内容:

script(type='text/javascript', src='http://code.jquery.com/jquery-1.9.1.js')
script(type='text/javascript', src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.24/jquery-ui.js')
script(type='text/javascript', src='./javascripts/ui.js')
script(type='text/javascript', src='./javascripts/handle.js').
  var data = !{test}
block content
  h3= title

在我的handle.js文件中,我有

$(function() {

    console.log(data);
});

在控制台上,我收到一条消息,说明数据未定义。如何将test的值从jade文件传递给javascript文件?目前test只是一个整数,但最终它将是一个包含许多属性的对象。

如何正确地将jade文件中的值传递给javascript文件?

1 个答案:

答案 0 :(得分:0)

这只适用于文字。对于对象,您可以执行此操作:

var data = !{JSON.stringify(data)};

对于显示未定义的部分,检查它是否正确设置并且它是正确的变量。

确保按正确顺序加载:

script(type='text/javascript')                                                   
  var data =!{JSON.stringify(test)};
script(src='./javascripts/handle.js)