如何使用Pug从数组输出HTML链接列表?

问题描述 投票:0回答:1

我有一个JavaScript数组tweetStreams

var tweetStreams = ["ScalaCourses", "Promotion1", "Promotion2"];

我想让Pug(当前版本)输出链接列表,呈现为HTML,如下所示:

<a href='#ScalaCourses'>ScalaCourses</a> <a href='#Promotion1'>Promotion1</a> <a href='#Promotion2'>Promotion2</a>

这是我到目前为止所得到的:

for ts in tweetStreams
    a(href= ts) #{ts}&nbsp;

输出是:

<a href="ScalaCourses">ScalaCourses&nbsp;</a><a href="Promotion1">Promotion1&nbsp;</a><a href="Promotion2">Promotion2&nbsp;</a>

  1. 如何使用#为链接添加前缀,以便它是本地链接?
  2. 有没有办法避免使用&nbsp;
  3. 我希望链接之间有空格,而不是它们之间

更新

修改@gandreadis答案,我有:

a(href= "#" + ts) #{ts}
    | &nbsp;

在视觉上,这给出了一个很好的结果,这个解决方案解决了问题1和3.不幸的是,使用带引号的空格而不是&nbsp;在输出中产生引号。有没有办法解决问题2?

pug
1个回答
1
投票

回答Q1:在链接前加上#a(href= "#" + ts)

回答Q3:CSS可能是获得边距的最简洁方法,但如果你坚持使用Pug,请参阅我的CodePen。基本上,添加一个尾随的| #{' '}-line应该完成分隔内联元素的工作:

for ts in tweetStreams
    a(href= "#" + ts) #{ts}
    | #{' '}

(请注意,这也消除了您在Q2中询问的不间断空间的需要)

© www.soinside.com 2019 - 2024. All rights reserved.