You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Express框架使用EJS的partials功能报ENOENT找不到文件错误如何解决

问题原因
  • 核心错误出在EJS模板里的include路径写法:你写的<%- include('/partials/navbar.ejs') %>开头带了斜杠/,在EJS的路径规则中,以/开头的路径会被识别为操作系统的绝对路径,直接从系统根目录(你这里是C盘根目录)查找文件,自然找不到存放在项目views目录下的partial组件。
解决方法
  1. 先确认你的项目目录结构符合以下规范:
你的项目根目录
├── app.js(你的服务端js文件)
└── views/
    ├── home.ejs
    ├── subreddit.ejs
    ├── notfound.ejs
    └── partials/
        └── navbar.ejs
  1. 修改模板中的include代码,去掉路径开头的斜杠,使用相对views目录的路径即可,以下两种写法都可以:
<%- include('partials/navbar.ejs') %>
<!-- 也可以省略后缀,EJS会自动识别ejs文件 -->
<%- include('partials/navbar') %>
额外优化建议

你当前模板的title标签里的变量输出漏了等号,不会正常渲染名称,修改为:

<title><%= name %></title>

内容的提问来源于stack exchange,提问作者Okta25

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 22:18:03