【问题标题】:Trigger event when a certain element has been removed当某个元素被移除时触发事件
【发布时间】:2018-02-03 18:49:33
【问题描述】:

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

【问题讨论】:

    标签: slate.js


    【解决方案1】:

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

    • 为图像处理创建一个插件函数(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) } />
          }
        }
      }
    

    【讨论】:

      猜你喜欢
      • 2016-01-23
      • 2013-08-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-01
      • 1970-01-01
      • 2011-09-06
      • 1970-01-01
      相关资源
      最近更新 更多