NodeJS + Jade 可变数量的块

NodeJS + Jade variable number of blocks

本文关键字:Jade NodeJS      更新时间:2023-09-26

我已经开始进入NodeJS开发。我正面临一个问题..

我有一个主模板 - layout.jade,它基本上在每个页面上构建了引导程序的顶部导航栏。这基本上是一个音乐应用程序,每个艺术家都有一定数量的歌曲。如果您进入其中一个艺术家的页面,您可以看到艺术家拥有的歌曲。如果艺术家有 5 首歌曲,他应该有 5 个格式的块:

block waveform
    div.waveform
        div.progress.progress-striped.active(id='progress-bar-#{songCount}')
            div.progress-bar(role='progressbar', aria-valuemin='0', aria-valuemax='100')
                span.sr-only
        h3.song-name #{songName}
        wave(id = '#{songCount}')

所以我希望拥有的布局继承是:

layout.jade
--artist.jade
----song.jade * (number of the songs the artist has)

我面临的问题是在布局中插入了多个 song.jade。是的,我可以在 artist.jade 中使用 JavaScript 生成 HTML 并将其附加 5 次(如果艺术家有 5 首歌曲)。但是有没有其他方法可以使用 NodeJS 和 Jade 在不阻塞客户端的情况下做到这一点?

另外,如果我做错了什么,请随时纠正我/提供建议:)

此解决方案应符合您的要求:

each song in artist.songs
  li= song.name


但是,此时插入的不是 song.jade。我认为,这种做法是不正确的。相反,您应该附加歌曲的 HTML 模板。