我想在玉/哈巴狗中建立一个可折叠的div循环。
我正在使用翡翠npm软件包版本1.11.0
例如,这是我的第一次迭代,它正在工作:
button.btn.btn-primary(type='button', data-toggle='collapse', data-target='#response0', aria-expanded='false', aria-controls='collapseExample')
| Show Response
#response0.collapse
.well
pre=response
不幸的是,当我尝试这个时
button.btn.btn-primary(type='button', data-toggle='collapse', data-target='#response0', aria-expanded='false', aria-controls='collapseExample')
| Show Response
div(id= 'response0').collapse
.well
pre=session_detail.response
或者这个
button.btn.btn-primary(type='button', data-toggle='collapse', data-target='#response0', aria-expanded='false', aria-controls='collapseExample')
| Show Response
.collapse(id= 'response0')
#response0.collapse
.well
pre=session_detail.response
html 输出看起来很棒,但折叠按钮不起作用。
我想构建的是这样有效的东西:
-var i = 0
-session_details.forEach(function(session) {
.row
.col-md-5
pre=session_detail.response
-var dataTarget='#response'+i
-var dataTargetResponse='response'+i
button.btn.btn-primary(type='button', data-toggle='collapse', data-target=#{dataTarget}, aria-expanded='false', aria-controls='collapseExample')
| Show Response
div(id= dataTargetResponse).collapse
.well
pre=session_
-i++
你对我能做什么有什么想法吗?感谢您的帮助
在 pug 中使用 for 循环时,您需要创建一个数组。或者你可以使用 while,像这样的东西;
- var i = 0;
.row
.col-md-5
while i < 4
.collapse(id='response' + i)
i++
更多信息请访问 pugjs 迭代页面
您可以使用 Pug 的循环each
遍历数组并处理该数组中的每个项目。
生成内容,每个循环中都有不同的 id,则可以在循环中使用数组的index
,如以下示例所示:
- var sessions = [1, 2, 3, 4, 5];
each session,index in sessions
button.btn.btn-primary(type='button', data-toggle='collapse', data-target= "#response"+index, aria-expanded='false', aria-controls='collapseExample')
| Show Response
.collapse(id= "response"+index)
.well
pre=response