【问题标题】:TypeError: View is not a constructor EJSTypeError: View 不是构造函数 EJS
【发布时间】:2019-01-21 06:40:14
【问题描述】:

我在尝试渲染 EJS 页面时遇到了这个错误...我想这个错误是在我这边,所以请你帮我调试一下?

错误

TypeError: View is not a constructor
at Function.render (/home/bot_king/nodelearn/project/node_modules/express/lib/application.js:570:12)
at ServerResponse.render (/home/bot_king/nodelearn/project/node_modules/express/lib/response.js:1008:7)
at /home/bot_king/nodelearn/project/app.js:16:9
at Layer.handle [as handle_request] (/home/bot_king/nodelearn/project/node_modules/express/lib/router/layer.js:95:5)
at next (/home/bot_king/nodelearn/project/node_modules/express/lib/router/route.js:137:13)
at Route.dispatch (/home/bot_king/nodelearn/project/node_modules/express/lib/router/route.js:112:3)
at Layer.handle [as handle_request] (/home/bot_king/nodelearn/project/node_modules/express/lib/router/layer.js:95:5)
at /home/bot_king/nodelearn/project/node_modules/express/lib/router/index.js:281:22
at Function.process_params (/home/bot_king/nodelearn/project/node_modules/express/lib/router/index.js:335:12)
at next (/home/bot_king/nodelearn/project/node_modules/express/lib/router/index.js:275:10)

代码

var express = require("express");
var app = express();
var port = 8080;
var ejs = require('ejs');
app.use(express.static("src/view"));

app.set("view", "./src/view");
app.set("view engine", "ejs");

app.use(express.static("public"));
app.listen(port, function(err){
console.log("The server is running on port " + port);
});

app.get("/", function(req, res){
res.render("index", { list: ["first", "2nd", "3rd"]})
});

HTML

<ul>
<% for(var i = 0; i<list.length; i++){%>
    <li> <h4> <%=list[i] %> </h4> </li>
<%}%>
</ul>

【问题讨论】:

    标签: node.js express render typeerror ejs


    【解决方案1】:

    应该是Views而不是View,所以你要改下面这行,

    app.set("view", "./src/view");
    

    作为,

    app.set("views", "./src/view");
    

    如果您仍然遇到问题(即使在进行更改后尝试从上述语句中删除 ./src 片段并将其设置为,

    app.set("view", "./view");
    

    希望这会有所帮助!

    【讨论】:

    • 非常感谢。它起作用了,我认为“view”是我的文件夹的名称,所以我写了“view”而不是“views”
    猜你喜欢
    • 2019-08-14
    • 2018-06-27
    • 2016-04-16
    • 2021-11-26
    • 2019-10-27
    • 2018-07-18
    • 2016-12-20
    相关资源
    最近更新 更多