删除某个元素时触发事件

时间:2017-08-25 16:50:12

标签: slate.js

我正在使用优秀的Slate编辑器构建编辑器,但我遇到了某项任务的问题。我已经构建了一个拖放图像上传,可以成功上传图像(通过API,与Slate无关)并将它们插入到编辑器中。但是,如果用户在编辑器中删除了图像,我想从服务器中删除该图像。有没有办法在node删除某个state类型时触发函数?

1 个答案:

答案 0 :(得分:2)

我刚刚开始关注平板并且正在研究同样的问题。我的解决方案是:

  • 为图片处理创建插件函数(options) => { /* plugin object */}
  • 在此插件函数中,在schema.nodes中,返回围绕我的主Image组件的包装器,该组件从options参数设置onDelete道具。
//ImagePlugin function

export default function ImagePlugin(options) {
  return {
    schema: {
      nodes: {
        image: props => <Image
          {...Object.assign({ onDelete: options.onDelete }, props) } />
      }
    }
  }