【发布时间】:2019-07-09 21:06:36
【问题描述】:
我的 ejs 代码:
出现错误未捕获的 ReferenceError: nextQuess 未在 HTMLButtonElement.onclick 中定义
<div>
<ol>
<% var setVar=0; var rowNo=0; %>
<% function nextQuess() { %>
<% console.log("inside nextQuess function"); %>
<% } %>
</ol>
</div>
<div>
<button onClick="nextQuess()" id="next" >Click me!</button>
</div>
这里有什么问题。谢谢。
【问题讨论】:
-
为什么不在脚本标签中定义函数?我真的不认为你可以使用 ejs 标签创建函数,它们是为了控制你管理视图的方式而创建的,它们有简单的逻辑,比如条件或循环 ...
-
我需要访问我通过渲染函数发送到我的 ejs 文件的 json 数组。如果我在脚本标签中定义函数,那么我将无法访问它。另外,如果我们不得不使用脚本标签,那么使用 EJS 的全部目的就没有了。
-
是的,你会:stackoverflow.com/questions/28603658/…,正如我所说的......通常模板引擎没有像完整语言那样复杂的逻辑......他们只有控制流。 ejs 不是框架
-
Thanx mJehanno,我明白你的意思了。
-
mJehanno,您共享的链接中的示例是,在 EJS 标记中为 var 分配了一个整数值,并且在脚本标记中使用了该变量,效果很好。但是当涉及到字符串值时,它就不起作用了。例如; EJS :- JS: