【发布时间】:2021-11-16 23:49:42
【问题描述】:
我正在 PugJS 中构建一个“事件列表”,我正在浏览每个事件,我想为每个月添加一个 html 元素,如下所示:<div data-month="October">。列出该月的事件后,我必须关闭 </div> 并为下个月开始一个新事件。
在后端,我只有一个 title 字段和每个事件的 date 字段。我想在不必添加额外字段的情况下进行此操作,以再次选择“月份”,如果所选月份与date 字段上的月份不同(以便能够列出事件),这可能会带来错误,是否有意义)?
目前,我正在这一步:
each event in calendar_events
- var str = event.primary.event_date // 2021-10-22
- var separator = '-';
- var month = str.split(separator, 2).pop(); // 10
while (month === '10')
- month = 'October'
//- I need to add here a <div data-month="October">
h2=event.primary.event_title[0].text
p=event.primary.event_date
//- After showing all the items,
//- I need to close that </div>
while (month === '11')
- month = 'November'
//- I need to add here a <div data-month="November">
h2=event.primary.event_title[0].text
p=event.primary.event_date
//- After showing all the items,
//- I need to close that </div>
问题是我在 10 月份的每个条目都得到一个重复的 <div data-month="October">,因为我必须在第一行开始迭代:each event in calendar_events。
我将把这个带有 html 版本的 CodePen 链接留在这里,因为我认为你们可以理解我的问题的主要思想:https://codepen.io/ositaka/pen/abwjrPe
【问题讨论】:
-
你能解释一下“我必须在第一行开始迭代”的意思吗?
标签: pug