我只是想简单问一下我有这样的错误
错误:找不到“<%=". at C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\ejs\lib\ejs.js:693:19 at Array.forEach () at Template.generateSource (C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\ejs\lib\ejs.js:678:15) at Template.compile (C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\ejs\lib\ejs.js:557:12) at Object.compile (C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\ejs\lib\ejs.js:389:16) at handleCache (C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\ejs\lib\ejs.js:212:18) at tryHandleCache (C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\ejs\lib\ejs.js:251:16) at View.exports.renderFile [as engine] (C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\ejs\lib\ejs.js:482:10) at View.render (C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\express\lib\view.js:135:8) at tryRender (C:\Users\User\Documents\latihannode.js\nodejs8\library\node_modules\express\lib\application.js:640:10)
”的匹配关闭标签
这是我使用 ejs 使用的代码
<ul class="nav navbar-nav">
<% for(let i=0; i<nav.length; i++) { %>
<li>
<a href="<%=nav[i].link"><%nav[i].title%></a>
</li>
<%}%>
</ul>
这是来自我的 NodeJS js 文件。当我渲染“index”时,我将索引变量传递给 EJS
app.get('/', (req, res) => {
res.render(
'index',
{
nav: [{ link: '/buku', title: 'Buku' },
{ link: '/penulis', title: 'Penulis' }],
title: 'library'
}
);
});
您应该用
href
关闭 %>
。
<a href="<%=nav[i].link%>"><%nav[i].title%></a>
我遇到了同样的问题,但错误发生在我导入的 ejs 文件内,而不是在我调用导入的文件中。很容易忘记打开和关闭。