EJS에 재귀 포함을 구현하려고합니다. ExpressJS 4를 사용하고 있습니다. 데이터를 선택적으로 전달할 수 있어야합니다. 내 "하위"변수는 루프 반복과 함께 변경되므로 전 세계적으로 작동하지 않습니다. 그러나 최대 호출 스택 크기가 초과되었습니다. 즉 부분의 if 문은 항상 true로 평가됩니다.EJS에 데이터 전달
이<ul class="f-dropdown">
<% subs.forEach(function(sub) { %>
<li>
<a href="#"><%= sub.fname +' ' +sub.lname %></a>
<% if (sub.agents && sub.agents.length) {subs = sub.agents; %>
<% include dropdown.html %>
<% } %>
</li>
<% }); %>
</ul>
UPDATE : 심지어이 작동하지 않습니다
<ul class="f-dropdown">
<% if (sub.agents && sub.agents.length > 0) { %>
<% (function(subs) { %>
<% include dropdown.html %>
<% })(sub.agents); %>
<% } %>
</ul>
이 내가 (dropdown.html)를 포함입니다
<ul id="drop1" data-dropdown-content class="f-dropdown">
<% agents.forEach (function(sub) { var subs = sub.agents; %>
<li>
<a href="#"><%= sub.fname +' ' +sub.lname %></a>
<% if (subs) { %>
<% include dropdown.html %>
<% } %>
</li>
<% }); %>
</ul>
:
이 내 주요 HTML입니다
나는 곧하려고합니다. JUST
이것을 확인하십시오. http://stackoverflow.com/questions/34622011/node-ejs-passing-data-to-an-include –