fix(editor): 图片超链接弹窗带出图片地址(docs/31 更正)

上一笔把图片「超链接」做成预填包裹链接,用户指出「没有带出来
这张图片的 url」——要的是图片自己的地址出现在弹窗里。改版
ImageLinkModal:主字段「图片地址」打开即带出该图 src(本地相对
路径或网络地址),可查看可改;包裹链接降为第二字段「点击时打开
的链接(可空)」。提交时一条事务同时处理 src 与 link 标记,
没改动则不发事务。新增弹窗预填与 src patch 测试。
This commit is contained in:
Muse
2026-11-15 10:06:47 +08:00
parent 0c09d94501
commit 1c0dd00088
6 changed files with 120 additions and 14 deletions

View File

@@ -68,10 +68,13 @@ Markdown 没有尺寸语法,通行写法是 HTML。方案(imageSchema.ts)
`[![alt](src)](href)`——实测这在本编辑器里可往返(link 标记挂在
图片节点上,解析/序列化都保留)。
修法:右键命中图片时,「超链接…」打开图片模式的链接弹窗——预填
图片当前的包裹链接(没有就是空),提交后用一条事务对图片节点
addMark/removeMark(editor.ts 的 `updateImageAtElement`,与尺寸
共用);清空即移除链接。文本选区的链接流程不变。
修法(第一版理解偏了):先做了「预填包裹链接」的弹窗,用户随即
指出「没有带出来这张图片的 url」——用户要的是**图片自己的地址**
出现在弹窗里。更正后的 `ImageLinkModal`:主字段「图片地址」打开
即带出该图的 src(本地相对路径或网络地址),可查看可改,提交后
patch 到节点;包裹链接降为第二字段「点击时打开的链接(可空)」,
提交时一条事务同时处理 src 与 link 标记(`updateImageAtElement`)。
文本选区的链接流程不变。
配套的编辑器接口(EditorPaneApi):`imageInfoForElement`(读
src/alt/width/linkHref)、`updateImageForElement`(按元素定位节点