2014-01-22 51 views
3

我正在開發一個使用Jade模板引擎的nodejs應用程序。Node.js從Jade,不一致的路徑加載外部樣式表

我的主要(「/」)佈局我有以下代碼,在我的公共路徑加載外部CSS。

link(rel='stylesheet', href='/stylesheets/styles.css') 
... 

有多行外部javascript和css文件需要加載。

但是,當我必須從my/users/profile jade模板加載它時,鏈接被破壞。

它說

GET http://localhost:3000/users/javascripts/underscore.js 404 (Not Found) 

有沒有辦法有一組鏈接,在我所有的翡翠模板的工作,所以我不必手動重新定義它們每次?

由於提前, 丹尼斯

+2

你的服務器代碼是什麼樣的? – max

+0

很難說沒有服務器代碼,但可能你想看看像傳遞css路徑到你的模板渲染函數作爲json值,並根據你的路徑路徑用一個小包裝函數或其他東西動態地預先渲染每次你實例化一條路線。 – Owen

回答

5

如果您正在使用express做這樣的:

app.use(express.static(__dirname + '/public')); 

link(rel='stylesheet', href='/stylesheets/styles.css')這將使以下HTTP請求:GET http://localhost:3000/stylesheets/styles.css,並表示將查找在目錄中的文件: ~/public/stylesheets/styles.css

+0

非常感謝。終於工作了。爲我節省了很多時間 – user3081516

+0

@ user3081516歡迎您) – karaxuna

相關問題