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

React Router V6.4.3中useLoaderData返回undefined问题求助

问题解决:useLoaderData() 返回 undefined 的原因

你的问题出在loader函数的返回值处理上:

在Index.js的data路由配置中,loader函数里调用了AuthProvider()但没有返回这个函数的执行结果:

loader={() => { AuthProvider() }}

这里的箭头函数没有显式返回值,默认返回undefined,导致useLoaderData()拿到的结果自然也是undefined。

修复方案

修改loader的写法,让它返回AuthProvider的执行结果,有两种简洁方式:

  1. 去掉花括号,利用箭头函数自动返回特性:
loader={() => AuthProvider()}
  1. 显式添加return语句:
loader={() => { return AuthProvider() }}

修改后,AuthProvider返回的user对象就能被useLoaderData()正确获取到。

另外提醒:当前AuthProvider的命名容易和React Context的Provider组件混淆,建议改成更贴合路由鉴权用途的名字(比如authLoader),避免后续代码维护时产生误解。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 03:35:19