link 链接
支持链接的渲染,提供插入链接的能力
Commands 命令
getLink()
获取光标所在的链接节点
类型
tsgetLink(): KNode | null
详细信息
该方法可以获取光标所在的唯一链接节点,如果光标不在一个链接节点内,则返回
null
示例
tsconst linkNode = editor.commands.getLink()
hasLink()
判断光标范围内是否有链接节点
类型
tshasLink(): boolean
详细信息
该方法用来判断光标范围内是否有链接节点,返回
boolean
值示例
tsconst has = editor.commands.hasLink()
setLink()
插入链接
类型
tssetLink(options: SetLinkOptionType): Promise<void>
详细信息
提供一个入参,类型为
SetLinkOptionType
,包含 3 个属性:- href string:链接的地址
- text string:链接的文本,如果光标选择了一段内容,则使用光标选择的内容
- newOpen boolean:链接是否新窗口打开
该方法会向编辑器内插入链接节点,在插入完毕后会更新视图和光标的渲染,所以调用该命令你无需主动
updateView
需要注意:当光标范围内包含其他的链接节点时,无法插入新的链接节点
示例
tsawait editor.commands.setLink({ href: 'https://www.baidu.com', text: '百度一下,你就知道' })
unsetLink()
取消链接
类型
tsunsetLink(): Promise<void>
详细信息
该方法会取消当前光标所在的唯一链接,在取消完毕后会更新视图和光标的渲染,所以调用该命令你无需主动
updateView
示例
tsawait editor.commands.setLink({ href: 'https://www.baidu.com', text: '百度一下,你就知道' })
updateLink()
更新链接信息
类型
tsupdateLink(options: UpdateLinkOptionType): Promise<void>
详细信息
提供一个入参,类型为
UpdateLinkOptionType
,包含以下 2 个属性:- href string:链接的地址,可选,不设置则不更新此属性
- newOpen string:链接是否新窗口打开,可选,不设置则不更新此属性
该方法可以自由地更新链接的地址、文本等,并且在更新完毕后会更新视图和光标的渲染,所以调用该命令你无需主动
updateView
需要注意:当光标不在同一个链接节点内时,此方法无效,因为获取不到唯一的链接节点
示例
tsawait editor.commands.updateLink({ href: 'www.baidu.com' })