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

React项目中Todos组件无法导入TodoItem模块报错如何解决

React导入TodoItem报错解决方案

核心报错原因:路径引用错误

你的Todos.js文件本身已经处于src/MyComponents目录下,导入语句中重复写了MyComponents层级,会让构建工具尝试查找不存在的路径src/MyComponents/MyComponents/TodoItem.js,因此抛出模块找不到的报错。

报错提示的查找路径可以直接验证这个问题:
程序在C:\Users\PrAbHu\Documents\React\to-do-list\src\MyComponents路径下尝试找./MyComponents/TodoItem,拼接后路径明显不存在。

修复代码

将Todos.js中的导入语句修改为如下内容即可:

import { TodoItem } from "./TodoItem";

额外隐藏问题修复

你当前的Todos组件代码还存在未定义变量的问题,修改完路径后会触发新的报错:代码中直接使用了todo[0],但没有从props中取值,按照你的代码逻辑需要做对应修改:

// 方案1:直接从props取
<TodoItem todo={props.todo[0]} />

// 方案2:先解构props
export const Todos = ({ todo }) => {
  // 后续代码不用修改,直接用todo[0]即可

其他可选排查点

如果修改完路径还是报错,可以逐一检查以下配置:

  • 确认TodoItem.js和Todos.js存放在同一个文件夹下
  • 确认两个文件的文件名大小写完全匹配,打包工具对大小写敏感,避免出现Todoitem.js/todoItem.js这类大小写不一致的命名
  • 确认TodoItem文件的后缀是.js,如果用了.jsx后缀要么导入时补全后缀,要么在webpack/vite配置中添加.jsx到自动识别后缀列表中

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 07:09:03