在对我的应用程序节点进行编码时,我在视图中引用了一个深度为 2 层的页面,CSS 和 JS 文件没有被引用?
网址http://localhost:1337/permits/Edit/1
...单击时,我失去了所有 css 样式和 js 功能我认为这是由于在我的视图中呈现了一个深度为 2 级的页面,但我不知道如何解决这个问题。
应用程序.js
app.engine('hbs', hbs({ extname: 'hbs', defaultLayout: 'layout', layoutsDir: __dirname + '/views/layouts/'}))
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hbs');
布局.hbs
{{> header }}
{{> topbar }}
{{> leftsidebar }}
{{{ body }}}
{{> rightcontentfooter }}
{{> rightsidebar }}
{{> footer }}
header.js
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>...
<link href="/assets/css/bootstrap.min.css" rel="stylesheet" type="text/css">
<link href="/assets/css/style.css" rel="stylesheet" type="text/css">
...
</head>
路由文件
router.get('/Edit/(:id)', function (req, res, next) {
var ID = req.params.id;
res.render('permits/permitRequestEdit', {title: 'Edit my item', id:id});
});
文件夹结构
public
-- assets
-- css
-- js
-- etc.
routes
index.js
permits.js
views
-- layouts
layout.hbs
-- partials
footer.hbs
header.hbs
etc.hbs
-- permits
permitRequestAdd.hbs
permitRequestEdit.hbs
permitRequestList.hbs
error.hbs
home.hbs
etc.hbs