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

React笔记管理应用中getNotes函数在NoteList组件触发TypeError(getNotes不是函数)的问题排查

问题排查:getNotes函数在NoteList组件中无法调用的原因

嘿,我一眼就发现了问题的核心——你的NoteList组件对props的解构方式出错了!

为什么getNotes无法调用?

React组件接收的props是单个对象参数,但你现在的写法是把它拆成了两个独立的参数:

function NoteList({notes}, {getNotes}) { 

这里的第二个参数{getNotes}根本不是组件的props,它实际上是undefined,所以你在delNote和updateNote里调用getNotes()时,自然会报错(比如提示getNotes is not a function)。

修正方法

把所有需要的props都放在同一个解构对象里,修改NoteList的函数参数写法:

function NoteList({ notes, getNotes }) { 

额外的小提示(可选)

除了这个核心问题,我还注意到两个小细节可能会影响你的功能:

  • 在updateNote函数中,axios.put的请求体参数名和后端预期的可能不匹配:你传的是updatetitle和updatedesc,但后端可能期望和创建时一致的title和desc,可以检查一下后端接口的要求。
  • 你的Dialog的open状态是NoteList组件级的,当你点击多个笔记的“Edit”按钮时,所有Dialog都会同时打开/关闭。建议把编辑相关的状态和逻辑抽成单独的NoteItem组件,每个笔记自己管理编辑弹窗的状态。

修正后,delNote和updateNote里的getNotes()就能正常调用,更新你的笔记列表了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 12:02:29