在Jade文件中渲染内联Javascript

时间:2013-10-23 22:39:37

标签: javascript node.js express inline pug

这是一个随机的,所以我会尽量清楚。我刚刚烧了大约3个小时试图找出发生了什么,我甚至无法弄清楚我应该在哪里看。

我们使用了一个我发现的方法,它允许我们将JS文件直接包含在一个单独的Jade文件中。我们将此作为所有供应商库和应用程序源代码的一种清单。从本质上讲,它有效,因此有一个大的JS文件提供所有应用程序库和代码。

这是一个名为application_js.jade的清单:

include ../../public/javascripts/lib/modernizr.min.js
include ../../public/javascripts/lib/jquery.min.js
include ../../public/javascripts/lib/prettydate.js
include ../../public/javascripts/lib/jquery.easing.min.js
include ../../public/javascripts/lib/jquery.isotope.min.js
include ../../public/javascripts/lib/jquery.ui.1.9.2.min.js
include ../../public/javascripts/lib/jquery.cookie.js

..等等。

我们的快递应用程序设置为简单呈现此文件:

app.get('/javascripts/application.js', function(req, res) {
  return res.render('js-views/application_js');
});

我们最近更新了一些软件包等,但我很困惑,因为现在,当我们点击网址domain.com/javascripts/application.js时,这些包含文件中的每一个现在都奇怪地包含在<script>标记中并被推送进入文档的<head>。以前,它会返回一个直接的javascript页面,这非常有效。

我知道这不是最好的做法,但它现在已经在我们的制作应用程序上使用了大约6个月并且足够好了...相信我,我更愿意在require.js中看到这个东西!

如果您需要查看我们的package.json文件或其他任何内容,请与我们联系,我们乐意为您提供帮助。提前感谢任何见解!

1 个答案:

答案 0 :(得分:0)

我自己遇到了同样的问题。 Jade已经改变了,尽管这在以前的版本中有用,但是为了更新我不得不稍微更改jade文件,如下所示:

script
  include ../../public/javascripts/lib/modernizr.min.js
  include ../../public/javascripts/lib/jquery.min.js