Javascript Jade-双重嵌套。Jade模板不获取公用文件夹资产。有什么想法吗?

Javascript Jade-双重嵌套。Jade模板不获取公用文件夹资产。有什么想法吗?,javascript,css,node.js,express,pug,Javascript,Css,Node.js,Express,Pug,我现在正在制作一个论坛系统,我有一个布局。jade,posts.jade和single.jadefor一个扩展posts.jade的单帖子显示,它本身扩展了布局。jade 单个详细帖子的single.jade模板不会从公用文件夹中获取我的css文件,即使我已指定在服务器配置中使用它 结构: /配置 /公开的 -/css -/style.css /路线 -/js包含主页请求的回调 -/js包含post请求的回调 /观点 -/杰德 -/杰德先生 -/all.jade扩展posts.jade,它扩展l

我现在正在制作一个论坛系统,我有一个布局。jade,posts.jade和single.jadefor一个扩展posts.jade的单帖子显示,它本身扩展了布局。jade

单个详细帖子的single.jade模板不会从公用文件夹中获取我的css文件,即使我已指定在服务器配置中使用它

结构:

/配置 /公开的 -/css -/style.css /路线 -/js包含主页请求的回调 -/js包含post请求的回调 /观点 -/杰德 -/杰德先生 -/all.jade扩展posts.jade,它扩展layout.jade -/single.jade扩展posts.jade,它扩展layout.jade server.js 代码如下:

server.js

app.use(express.static(path.join(__dirname, 'public')));

// Routes
var main = require('./routes/main'),
    posts = require('./routes/posts'),
    postsRouter = express.Router();

app.use('/posts', postsRouter);

app.get('/', main.index);

postsRouter.get('/', posts.all);
postsRouter.get('/details/:id', posts.details);
postsRouter.post('/create/:uid', posts.create);
postsRouter.post('/destroy/:id', posts.remove);
postsRouter.post('/edit/:id', posts.edit);
杰德先生

extends ./layout.jade

block title
    title All posts

block content
    .row
        section#forum-posts.col-md-9
            .col-inner
                block primary

        aside#sidebar-right.col-md-3
            .col-inner
                block sidebar
block title
    title All posts

block content
    .row
    section#forum-posts.col-md-9
        .col-inner
            block primary
                h1 All posts
                for post in posts
                    // list posts here...

      aside#sidebar-right.col-md-3
        .col-inner
            block sidebar
                h1 Hello from the Sidebar :)
好的,杰德 扩展/posts.jade

extends ./layout.jade

block title
    title All posts

block content
    .row
        section#forum-posts.col-md-9
            .col-inner
                block primary

        aside#sidebar-right.col-md-3
            .col-inner
                block sidebar
block title
    title All posts

block content
    .row
    section#forum-posts.col-md-9
        .col-inner
            block primary
                h1 All posts
                for post in posts
                    // list posts here...

      aside#sidebar-right.col-md-3
        .col-inner
            block sidebar
                h1 Hello from the Sidebar :)
单身汉

extends ./posts.jade

block title
    title Details for #{post.title}

block content
    .row
    section#forum-posts.col-md-9
        .col-inner
            // Single post data here...            

    aside#sidebar-right.col-md-3
        .col-inner
因此,当我导航到/posts时,它会毫无问题地获取all.jade-一切正常

问题是:当我转到/posts/details/id时,它会获取single.jade模板及其所有依赖项posts.jade、layout.jade,但它不会从我在layout.jade中指出的/public foldercss/style.css、bootstrap.min.css文件中获取资产,即使它扩展了它并且标记显示在页面上

我不确定这是否是因为路线:

感谢您能与我分享的任何想法:


提前谢谢

您能显示/posts/details/id的内容吗?感谢您的回复:路由从我上面列出的single.jade模板获取内容。正如您在我的server.js文件中所看到的,我已经设置了一个Express.Router在/posts路由中运行,因此当我这样做时->postsruter.get'/details/:id',posts.details;它实际上转到/posts/details/id,并使用我的posts.js文件中的details回调:这是posts.js请参见postsRouter.get上面的粗体部分:module.exports={details:functionreq,res{res.render'single',{post:posts[req.params.id]};}}这是更多的格式化程序代码:module exports={details:functionreq,res{res.render'single',{post:posts[req.params.id]};}}}当我使用main/posts路由执行此操作时,它工作得很好。这可能是嵌套路由的问题吗?