我目前正在使用Node.js的Express框架,並且在每個頁面(路線)的基礎上包含樣式表和JavaScript文件時遇到問題。我使用的是默認的快速安裝與路線/ index.js文件,內容如下:Express(Node.js) - 有條件地包含CSS和JS文件
exports.index = function(req, res){
res.render('index', { title: 'Index Page Test' })
};
exports.browse = function(req, res){
res.render('browse', { title: 'Browse Page Test' })
};
的路由上述工作正常,它加載index.jade和browse.jade到的「身體」按預期佈局.jade。但是,索引路由所需的資產(CSS和JS文件)與瀏覽路徑所需的資源並不相同。我有可能將一個數組傳遞給包含所需資源的layout.jade模板並簡單地將其循環?
我試圖通過上面做:
Index.js(路線)
通過遵循:
Layout.jade
each js in scripts
script(src= js)
然而,它只是拋出一個錯誤說「scr ipts沒有定義。「 我很確定我沒有這樣做。此外,我只是想補充一點,我偶然發現了另一個類似的StackOverflow問題:Node.js with Express: Importing client-side javascript using script tags in Jade views? 但我不太喜歡那裏顯示的方法(它需要一個額外的幫手)。如果可能的話,我想堅持模板引擎本身提供的功能。
謝謝。
編輯:如果有幫助,我想實現類似於此:http://kerkness.ca/kowiki/doku.php?id=template-site:create_the_template
對不起,如果我沒有讓自己清楚,但我已經試過這種方法,它只是拋出一個「腳本沒有定義」的錯誤。 – MrSaints 2012-04-08 19:54:33
那麼你顯然一定是做錯了什麼:)我試過這個,它爲我工作 – mihai 2012-04-08 21:39:39
你使用什麼版本的快遞?另外,在你的例子中,腳本似乎是某個對象的成員。你能發佈完整的代碼嗎? – mihai 2012-04-08 21:42:12