我应该如何更改 vercel 部署的视图目录?

问题描述 投票:0回答:1

我正在尝试在 vercel 上部署带有 EJS 模板的 Express 应用程序。部署后,显示内部服务器错误。这就是我在日志中得到的内容。

Error: Failed to lookup view "home.ejs" in views directory "/var/task/views" at Function.render (/var/task/node_modules/express/lib/application.js:597:17) at ServerResponse.render (/var/task/node_modules/express/lib/response.js:1039:7) at /var/task/app.js:16:9 at Layer.handle [as handle_request] (/var/task/node_modules/express/lib/router/layer.js:95:5) at next (/var/task/node_modules/express/lib/router/route.js:144:13) at Route.dispatch (/var/task/node_modules/express/lib/router/route.js:114:3) at Layer.handle [as handle_request] (/var/task/node_modules/express/lib/router/layer.js:95:5) at /var/task/node_modules/express/lib/router/index.js:284:15 at Function.process_params (/var/task/node_modules/express/lib/router/index.js:346:12) at next (/var/task/node_modules/express/lib/router/index.js:280:10) 

请告诉我如何更改 vercel 正在查找的视图文件夹。

javascript node.js express ejs vercel
1个回答
0
投票

我也面临着同样的问题。 就我而言,问题是视图文件夹和包含静态文件的文件夹的路径设置。 因此请提供完整路径而不是本地路径。

改变这个

app.set("view engine", "ejs");
app.use(express.static("public")) and all static folders like this

app.set("views", __dirname + "/views");
app.set("view engine", "ejs");
app.use(express.static(__dirname + "public"));

希望这对你有帮助......

© www.soinside.com 2019 - 2024. All rights reserved.