我正在使用EJS作为我的前端开发堆栈的一部分。 例如,我的普通index.ejs看起来像这样:
<%- include parts/header.ejs %>
<%- include parts/navigation.ejs %>
<!-- HTML content: divs, spans, etc. -->
<%- include parts/footer.ejs %>
我想要的是以某种方式传递包含&lt;% - include parts / footer.ejs? variable = value %&gt;的变量?并希望在包含的文件中读取它,以有条件地显示/隐藏内容的某些部分。
我找不到办法。是否可以使用EJS?
答案 0 :(得分:5)
两种方法:
这种方式与EJS 1.0兼容,并且具有编译时的优势。
只需在include
之前声明变量。
示例:
included.ejs:
<p><%= variable %></p>
main.ejs:
<% var variable = 'hola' %>
<% include included %>
此方法仅适用于EJS 2.0或更高版本,但可能比上一个方法稍慢(或者如果未启用缓存,则速度要慢很多):
included.ejs:
<p><%= variable %></p>
main.ejs:
<%- include('included', {variable: 'hola'}) %>