我的布局jade文件中的扩展路径如下所示:
link(rel='stylesheet', href='../lib/bootstrap/dist/css/bootstrap.min.css')
link(rel='stylesheet', href='../lib/components-font-awesome/css/font-awesome.min.css')
所以如果我的链接像是一样的话,那就没关系了
www.url.com/admin/
但是当我打电话给
www.url.com/admin/blog/new
路径当然是错误的。它需要看起来像href='../../lib/...'
,因为路由看起来像这样:
router.get('/admin/blog/new', isLoggedIn, function (req, res) {
res.render('admin/blog-new', {title: 'Post Blog Entry'});
})
除了绝对路径之外,还有可能解决这个问题吗? (也许我现在是个傻瓜)
答案 0 :(得分:1)
您可以将lib文件夹作为名为static的服务器,之后您可以删除相对路径。
app.use('/vendor',express.static(path.join(__dirname, 'client/vendor')));
因此,您可以在我的根目录中看到我有一个客户端文件夹,其中我将所有下载的库存储在供应商文件夹中。所以我将静态路径映射为 / vendor 。
现在我们可以将libs称为
<link rel="stylesheet" href="vendor/jquery-ui/themes/smoothness/jquery-ui.min.css">
答案 1 :(得分:0)
我发现,通过使用前导/
,您可以通过更改路径来引用解决问题的基本路径
link(rel='stylesheet', href='/../lib/bootstrap/dist/css/bootstrap.min.css')
link(rel='stylesheet', href='/../lib/components-font-awesome/css/font-awesome.min.css')