找回密码
 立即注册

QQ登录

只需一步,快速开始

Derrick.Jiao 讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-4-8 11:46  /   查看:4470  /  回复:3
本帖最后由 DerrickJiao 于 2021-4-12 15:07 编辑

本期教程教大家如何通过getData和setData获取和设置字段列表。因为有的小伙伴想在加载模板进来的时候,想将已将设置好的字段填写到右侧的字段列表面板上。
image.png998217468.png

我们首先说一下如何通过getData获取字段列表的json。首先,我们需要获取设计器实例.
  1. var designer = GC.Spread.Sheets.Designer.findControl('gc-designer-container')
复制代码
然后通过("oldTreeNodeFromJson"用于获取旧的树形结构)或者("updatedTreeNode"用于获取更新的树形结构)
  1. var designerBindingPathSchema = designer.getData("treeNodeFromJson") || designer.getData("updatedTreeNode") || designer.getData("oldTreeNodeFromJson");
复制代码
image.png353847350.png

那么接下来我们来看下如何通过setData添加字段列表,我们需要定义一个变量存储字段结构
  1. var templateJSONSchema = `{"$schema":"http://json-schema.org/draft-04/schema#","properties":{"field-0":{"dataFieldType":"table","type":"array","items":{"type":"object","properties":{"field-00":{"type":"string"},"field-01":{"type":"string"},"field-02":{"type":"string"}}}}},"type":"object"}`;
复制代码
然后通过setData将这个字段结构传进去即可
designer.setData("treeNodeFromJson", templateJSONSchema);
designer.setData("oldTreeNodeFromJson", templateJSONSchema);


2 个回复

倒序浏览
inroad
中级会员   /  发表于:2021-6-25 11:12:55
沙发
获取设计器实例:
var designer = GC.Spread.Sheets.Designer.findControl('gc-designer-container')
只能通过这个方法吗?designerInitialized初始化方法返回的值不是设计器实例吗?
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-6-25 11:24:02
板凳
您好,
此教程是使用的在线表格编辑器为示例,
所以通过 findControl 获取到designer。
在这篇帖子中回答了您的问题:
https://gcdn.grapecity.com.cn/fo ... hread&tid=94699
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部