动态ejs布局

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

我使用带有markdown和ejs的静态网站生成器(在某些地方也有一些建议)。

我有以下变量:-post.name1-post.name2-post.name3等

我的ejs布局如下:

<%if(post.name1){%>
<div class="name"><%- post.name1 %>
</div>
<% } %>
<%if(post.name2){%>
<div class="name"><%- post.name2 %>
</div>
<% } %>
<%if(post.name3){%>
<div class="name"><%- post.name3 %>
</div>
<% } %>

而不是编写我的代码块三次(实际上是我有59个名字的59次),我只想写一(1)次,就像下面的例子,然后使我的布局如上所述:

<%if( name ){%>
<div class="name"><%- name %>
</div>
<% } %>

因此是否有可能使布局仅通过一个代码块(和某些功能)为我所有的59个名称生成?

javascript vue.js ejs
1个回答
0
投票
<% for(var i=1; i <= Object.keys(post).length ; i++) {%>
    <%if(post['name' + i]){%>
       <div class="name"><%- post['name' + i]%></div>
    <% } %>
<% } %>

尝试一下,但是您绝对应该将帖子构造为objets数组,以便可以轻松遍历它。

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