更新时间:2024-11-04 GMT+08:00
文件介绍及示例
文件介绍
{widget}.editor.js为组件属性定义文件,负责组件编辑状态时需要渲染的界面和逻辑。其中,“{widget}”为自定义组件的名称,如本示例中该文件名为“EchartsWidgetTemplate.editor.js”。{widget}.editor.js文件只在组件编辑状态被加载,主要包括propertiesConfig方法和create方法。
文件示例
EchartsWidgetTemplate = EchartsWidgetTemplate.extend({ // 组件事件配置项,定义组件事件结构及说明,给全局变量映射使用 eventConfig: { clickSeries: { desc: { zh_CN: "点击系列", en_US: "Click Series" }, fields: [ { name: 'seriesIndex', desc: { zh_CN: '系列索引', en_US: 'Series Index' }, }, { name: 'seriesName', desc: { zh_CN: '系列名', en_US: 'Series Name' }, }, ], }, }, // 配置项大的分类 classfication: [[{ name: 'configuration' }, { name: 'tooltip' }]], // 组件详细配置 propertiesConfig: [ { config: [ { type: 'dataSetting', mapping: { x: { keyName: 'dataX', keyTitle: { zh_CN: 'X轴数据', en_US: 'X axis Data' }, limitNumber: '1', type: 'category', label: 'x', required: true, }, y: { keyName: 'value', keyTitle: { zh_CN: 'Y轴数据', en_US: 'Y axis Data' }, limitNumber: '1', type: 'value', label: 'y', required: true, }, s: { label: 's', limitNumber: '1', series: [ { type: '', label: '', required: false, }, ], }, }, mock: {}, name: 'EchartsWidgetTemplateConnector', model: 'CommonViewModel', }, ], }, { migrateFrom: 'advancedSettings', headerTitle: { zh_CN: '数据映射', en_US: 'Data Mapping' }, belong: 'configuration', config: [ { type: 'select', name: 'commonProps.emphasisFocus', label: { zh_CN: '高亮时淡出', en_US: 'Emphasis Focus' }, value: 'series', options: [ { label: { zh_CN: '不淡出其它图形', en_US: 'None' }, value: 'none', }, { label: { zh_CN: '只聚焦当前高亮的数据的图形', en_US: 'Self' }, value: 'self', }, { label: { zh_CN: '聚焦当前高亮的数据所在的系列的所有图形', en_US: 'Series' }, value: 'series', }, ], }, { type: 'tab', name: 'commonProps.showLabel', label: { zh_CN: '显示标签', en_US: 'Emphasis Focus' }, value: true, options: [ { label: { zh_CN: '显示', en_US: 'Show' }, value: true, }, { label: { zh_CN: '隐藏', en_US: 'Hide' }, value: false, }, ], }, ], }, { migrateFrom: 'advancedSettings', headerTitle: { zh_CN: '提示', en_US: 'Tooltip' }, belong: 'tooltip', config: [ { type: 'select', name: 'commonProps.axisPointerType', label: { zh_CN: '指示器', en_US: 'Axis Pointer' }, value: 'shadow', options: [ { label: { zh_CN: '直线指示器', en_US: 'Line' }, value: 'line', }, { label: { zh_CN: '阴影指示器', en_US: 'Shadow' }, value: 'shadow', }, { label: { zh_CN: '无指示器', en_US: 'None' }, value: 'none', }, ], }, ], } ], // 仅在组件首次被创建时调用一次,必填 create: function (cbk) { if (cbk) { this._super(); cbk(); } }, }); // 注册组件,必填 window.Studio.registerWidget('EchartsWidgetTemplate', 'EchartsWidgetTemplate', {});
- eventConfig:组件事件描述配置项,用来扩展给全局变量使用。
- classfication:组件的配置项分类。
- propertiesConfig:负责组件配置页面中,右侧的属性配置逻辑。
- create(必须配置):组件内置的扩展,仅在组件首次被创建时调用一次。
- registerWidget(必须配置):注册组件的逻辑实现。
父主题: {widget}.editor.js