javascript - 如何修复ejs中的 "Unexpected token < "错误

标签 javascript html node.js mongodb ejs

我正在开发一个 nodejs 记录器应用程序,问题是当我想检索数据以在表格中显示它们时,会发生此错误:

<% include('header'); -%> ^ SyntaxError: Unexpected token <

我的代码如下:

错误 Controller :

 const controller = require('app/http/controllers/controller');
 const errors = require('resource/views/error.ejs');
 var error = require('app/models/error');
 var logs ;

 class errorController extends controller {
    show(req,res){
         error.find({})
             .then(res.render(errors, { results : results }))
   }
  }

   module.exports = new errorController();

错误.ejs

<% include('header'); %>


<div class="list-group">
  <% results.forEach((results) => { %>
    <a href="/geterrors %>" class="list-group-item">
      <h4 class="list-group-item-heading"><%= results.cid %></h4>
      <p class="list-group-item-text"><%= results.stacktrace %></p>
    </a>
  <% }) %>
</div>

<% include('footer'); %>

我的 Controller 有什么问题吗?或者 ejs 语法?

最佳答案

Node.js 无法require ejs 文件。

error.ejs放在./views目录下,并调用res.render如下:

res.render('error.ejs', {results: results})

请参阅docs关于res.render

关于javascript - 如何修复ejs中的 "Unexpected token < "错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57888262/

相关文章:

node.js - 在 travis ci 上构建 webpack

Nodejs 中的 Javascript 全局变量和属性 - 全局属性有时会被删除?

node.js - Nodejs AWS SDK S3 生成预​​签名 URL

javascript - 使用 Javascript 和 Jquery 进行简单的产品过滤

javascript - OpenLayers 没有在我的 map 上添加标记

javascript - Mongoose - 当从集合中返回所有项目(没有搜索参数)时,从集合中返回的项目不包含其 mongo _id

javascript - 防止人们点击按钮内的图标

javascript - JQuery - 将先前声明的变量用于点击功能

javascript - 获取子文件夹 Azure 中的 blob 列表

javascript - 如果用户在 x 秒内没有按下按钮则执行函数