2013-10-23 55 views
1

這是一個隨機的,所以我會盡量讓它儘可能清楚。我剛剛燒了大約3個小時,試圖弄清楚發生了什麼,我甚至無法弄清楚我應該在哪裏尋找。在Jade文件中渲染內聯Javascript

我們使用了一種從我發現的方法,可以將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文件或其他任何東西,很樂意提供幫助。預先感謝任何見解!

回答

0

我自己也遇到了同樣的問題。翡翠已經改變了,儘管這在以前的版本中有效,但對於新的我必須稍微改變翡翠文件,像這樣:

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