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

Slate.js 如何查询并更新已存在的节点?

已存在节点更新操作实现

你当前的实现存在两处可调整的问题:

  1. 变量名拼写错误,定义时写为paht,后续调用时使用path会触发未定义报错
  2. newProperties字段无需额外嵌套node层,直接传入要更新的节点属性即可

修正后的完整实现代码如下:

const path = [0,1,1,2]
const data: any = {
                type: 'ref',
                id: uniqid(),
                data: target,
                x: 'new data are here.,',
                children: [{text: 'more new data'}],
            }

editor.apply({
                type: 'update_node_at_path',
                path: path,
                newProperties: data,
            });

注意事项

  • 如果需要保留原节点的未修改属性,可先调用editor.node(path)获取原节点数据,和新属性合并后再传入newProperties,避免原有字段被覆盖
  • 执行更新操作前需确认path对应当前编辑器的真实节点路径,节点发生增删后路径会变动,需要重新获取后再执行操作

内容的提问来源于stack exchange,提问作者Ali Husham

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 21:54:03