React & Next.js中Markdown编辑器状态更新异常问题
解决SimpleMDE编辑器状态更新后打印undefined的问题
问题根源
react-simplemde-editor的onChange回调直接返回编辑后的文本字符串,而非包含text属性的对象。你当前用({ text })解构参数,相当于从字符串中读取不存在的text属性,结果自然是undefined,进而导致markdownDescription状态被设置为undefined,最终在saveResource中打印出undefined。修复步骤
- 修正
onChange的参数处理逻辑,直接接收文本参数:<SimpleMDE value={markdownDescription} onChange={(text) => setMarkdownDescription(text)} /> - 移除不必要的
key={markdownDescription},这个key会导致每次状态变化都重新渲染编辑器实例,可能引发额外的渲染问题。
- 修正
额外验证
确认react-simplemde-editor的版本,不同版本的回调参数格式可能存在差异,确保使用的版本回调直接返回文本字符串。
内容的提问来源于stack exchange,提问作者donzee529
相关产品推荐
相关产品推荐

