Slash menu throws "Attempting to update uninitialized suggestions menu" after toggling editable
还没有人认领这个 Issue。
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 55/100
- Issue 类型
- 缺陷
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- react, typescript
- 领域
- frontend
调研方向
Start in @blocknote/core/src/extensions/SuggestionMenu/SuggestionMenu.ts, especially emitUpdate, SuggestionMenuView.update, and closeMenu, then reproduce the controlled editable toggle with CPU throttling. Trace the update sequence after switching to editable and typing /. Done means the slash menu opens without the uninitialized suggestions menu error.
由索引模型根据 Issue 内容生成。
描述
Version:
@blocknote/core@0.49.0
Repro
- Render a BlockNoteEditor whose editable prop is toggled from a parent (e.g. switching between view and edit mode).
- DevTools → Performance → CPU: 6x slowdown (low-end devices reproduce naturally).
- Toggle the editor from non-editable to editable.
- Immediately type / to open the slash/suggestion menu.
Throws:
Error: Attempting to update uninitialized suggestions menu
at emitUpdate (SuggestionMenu.ts:35)
at SuggestionMenuView.update (SuggestionMenu.ts:90)
at ... prosemirror-view dispatch
What did you expect to happen?
No errors
Steps to reproduce
- Render a BlockNoteEditor whose editable prop is controlled by parent React state (we toggle between view/edit modes).
-Open DevTools → Performance → set CPU to 6× slowdown (this makes the bug deterministic; in production it occurs on real users without throttling, presumably on slower devices). - Toggle the editor from non-editable → editable
- Immediately type / to open the suggestion menu.
- Observe the thrown error in the console
BlockNote version
@blocknote/core@0.49.0
Environment
Reported in production on Chrome 147 / Windows 10/11 (real user). Reproduced locally on Chrome (latest) / macOS with React 18 and CPU throttling at 6×.
Additional context
Production stack trace (sourcemapped):
Error: Attempting to update uninitialized suggestions menu
at emitUpdate (@blocknote/core/src/extensions/SuggestionMenu/SuggestionMenu.ts:35:18)
at SuggestionMenuView.update (@blocknote/core/src/extensions/SuggestionMenu/SuggestionMenu.ts:90:11)
at pluginView.update (prosemirror-view/dist/index.js:5580:31)
at anchorInRightPlace (prosemirror-view/dist/index.js:5526:13)
at updateState (prosemirror-view/dist/index.js:5454:13)
at Editor.emit (@tiptap/core/src/Editor.ts:646:14)
at dispatch (prosemirror-view/dist/index.js:5829:28)
at callback (@blocknote/core/src/editor/managers/StateManager.ts:142:29)
at callback (@blocknote/core/src/editor/BlockNoteEditor.ts:707:30)
at closeMenu (@blocknote/core/src/extensions/SuggestionMenu/SuggestionMenu.ts:117:16)
Contribution
- I'd be interested in contributing a fix for this issue
Sponsor
- I'm a sponsor and would appreciate if you could look into this sooner than later 💖
- 主要语言
- TypeScript
- 星标
- 10.2k
- 派生
- 772
- 平均合并
- 3 天 11 小时
- 30 天内合并 PR
- 17
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
TypeCellOS/BlockNote 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 84/100
TypeCellOS/BlockNote#3098 ·
-
needs-triage
难度 2/5 1-3 小时 新手友好度 78/100
TypeCellOS/BlockNote#3073 ·
-
needs-triage
难度 2/5 1-3 小时 新手友好度 85/100
TypeCellOS/BlockNote#3072 ·
-
难度 2/5 1-3 小时 新手友好度 82/100
TypeCellOS/BlockNote#2949 · 1 条评论 ·
-
a11y
难度 2/5 1-3 小时 新手友好度 68/100
TypeCellOS/BlockNote#2855 ·
查看 TypeCellOS/BlockNote 的全部 Issue
相似的 Issue
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
难度 2/5 1-3 小时 新手友好度 78/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
难度 1/5 1 小时以内 新手友好度 76/100
-
code-quality refactoring
难度 2/5 1-3 小时 新手友好度 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
难度 2/5 1-3 小时 新手友好度 74/100
langchain-ai/deepagents#6450 ·
-
难度 1/5 1 小时以内 新手友好度 88/100
vercel/react-tweet#225 ·