鍍金池/ 問答/網(wǎng)絡(luò)安全  HTML/ node.js中express的render的視圖名和路由名不一致的問題[已解決

node.js中express的render的視圖名和路由名不一致的問題[已解決]

業(yè)務(wù)背景

一個表的添加和刪除
共用同一個視圖

問題
兩個get路由,分別截獲不同的url
但是返回相同的視圖

但是如果url名和視圖名不同的話
視圖中靜態(tài)文件的引用地址會自動加一個前綴,這個前綴是url路徑.這樣就無法訪問這個靜態(tài)文件了.這是為什么?
要怎樣才能讓兩個不同的路由,共用同一個視圖文件呢?

由于趕工作,暫時沒時間看文檔,搜索了一下沒答案,就先提個問題,麻煩大家啦.

代碼

文檔結(jié)構(gòu)
/public/css/ex.css
/views/ex.handebars
index.js
ex.handebars
<link href="css/ex.css">
index.js
app.get('/ex',function(req,res){
    res.render('ex');
})
app.get('/ex22/add',function(req,res){
    res.render('ex');
    //能夠正常輸出html文檔
    //但是link的路徑變成了 ex22/ex.css
})
已解決:在這種匹配/xx/xx多級路徑的情況下,.handlebars里面的引用路徑要用絕對路徑才行,至于為什么要這樣,不懂.....
回答
編輯回答
蟲児飛

.handlebars文件里面的靜態(tài)資源引用地址,不要使用相對地址,使用絕對地址就解決了.
至于為什么這樣,還沒搞懂

<link href="css/ex.css">

改成前面加/

<link href="/css/ex.css">
2017年10月27日 08:58