目录

设置初始值

  在编辑加载时设置初始值是非常有必要的,在大部分情况下这是必须的,如当我们打开一个已有的文档时,必须把上一次保存过的数据重新载入到编辑器,这就需要给编辑器设置初始值。

  有两种方式给编辑器设置初始值:

在编辑器load方法中传入初始值

  当开打一个已有文档时,你一般会通过http请求获取到了文档的数据,其中也包括已经存储过的编辑器数据,然后就可以在load方法中传入:

//通过请求获取编辑器数据(json格式)
//这里假设获取到的数如下
const data = {
  "fileno": "XXX",
  "subject": "关于XXX的通知",
  "mainSend": ["单位1", "单位2"]
  ...
}

const editor = await DocEditor.createEditor(div, {
  base: './doceditor/'
});
//传入data即可
editor.load(data);

您可以在在线编辑器中尝试:在线运行本样例

实现service中的getData方法

  service是用于DocEditor编辑器与后端交互要实现的对象。(关于service,将在服务端交互章节中详细介绍)本章中我们简单介绍一下service中的getData方法。

  我们可以在service中的getData方法中从服务器获取已经存储过的编辑器数据,并返回,用于设置编辑器初始值:

const service = new DocEditor.Service();
service.getData = function(docId){
  //实现获取编辑器数据
  //docId为初始编辑器时传入的docId配置项
  //返回json对象,或 一个promise,resolve 时回传 编辑器值的json 对象。
  return {
    "fileno": "XXX",
    "subject": "关于XXX的通知",
    "mainSend": ["单位1", "单位2"]
    //...
  }
};

//将servicec作为参数传入createEditor方法
const editor = await DocEditor.createEditor(div, {
  base: './doceditor/',
  docId: 'xxxxxxx'
}, service);
editor.load();

您可以在在线编辑器中尝试:在线运行本样例