我将EJS用作前端开发堆栈的一部分。例如我正常的index.ejs看起来像这样:
<%- include parts/header.ejs %>
<%- include parts/navigation.ejs %>
<!-- HTML content: divs, spans, etc. -->
<%- include parts/footer.ejs %>Run Code Online (Sandbox Code Playgroud)
我想要的是以某种方式通过include <%-include parts / footer.ejs传递变量吗?variable = value%>,并希望在包含的文件中读取它,以有条件地显示/隐藏内容的某些部分。
我找不到办法。EJS有可能吗?
有两种方法可以做到这一点:
这种方式与EJS 1.0兼容,并且具有编译时的优势。
只需在includeing 之前声明变量。
例:
included.ejs:
<p><%= variable %></p>
Run Code Online (Sandbox Code Playgroud)
main.ejs:
<% var variable = 'hola' %>
<% include included %>
Run Code Online (Sandbox Code Playgroud)
此方法仅适用于EJS 2.0或更高版本,但可能比上一个方法稍微慢一些(如果未启用缓存,则可能慢很多):
included.ejs:
<p><%= variable %></p>
Run Code Online (Sandbox Code Playgroud)
main.ejs:
<%- include('included', {variable: 'hola'}) %>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2114 次 |
| 最近记录: |