JQuery和jade从Nodejs读取渲染数据

我正在使用Jade框架作为前端Nodejs&后端expression

所以当我使用数据呈现视图时,我无法使用JQuery访问这些数据

低于我的服务Nodejs呈现与简单的数据= X视图

router.get('/test',function (req,res,next) { res.render('test',{data : 'x'}); }); 

所以testing页面将显示没有任何问题,所要做的是使用Jquery方法读取呈现的数据

  footer .pull-right | Gentelella - Bootstrap Admin Template by a(href='https://colorlib.com') Colorlib .clearfix // /footer content // jQuery script(src='/vendors/jquery/dist/jquery.min.js') alert(data) // no alert or action happen 

但是说错误(数据的未知variables)

而且,我可以从玉石本身读到它

有什么build议么?

谢谢

尝试使用以下内容

 |<script> !='alert("'+data+'")' |</script> 

您在jade框架中编写的JavaScript将无法查看您的服务器端node.jsvariables,因为此客户端JavaScript在浏览器中加载并执行,所以您必须以某种方式将variables从服务器端传递到客户端然后使用客户端JavaScript获取这些variables。

如果你正在传递一些string,那么使用前面的方法会比较容易。

|<script> – >打开JavaScript标记。

!='alert("'+data+'")' – >正常的Jadestring,它会在我们的JavaScript标记中,这意味着它应该给我们的JavaScript代码,由玉处理,这将使我们的最后文本alert("x")因为数据将被其值所取代。

|</script> – >closuresJavaScript标记

但是如果你想传递对象,有一种方法可以这样做:

  • 使用AJAX请求。
  • 在服务器端使用JSON.stringify(data)将对象写入隐藏的div并在客户端使用var data = JSON.parse(jQuery('div').text())