Commit a41b35b76d2cef5337b973bddf7bc323a97c033e
1 parent
18b300be
perf: auto save data source on open interaction event or open dynamic effect
Showing
1 changed file
with
37 additions
and
10 deletions
| @@ -5068,11 +5068,18 @@ DataFormatPanel.prototype.addDataFont = function (container) { | @@ -5068,11 +5068,18 @@ DataFormatPanel.prototype.addDataFont = function (container) { | ||
| 5068 | } | 5068 | } | 
| 5069 | 5069 | ||
| 5070 | /** | 5070 | /** | 
| 5071 | - * @description 刷新页面 | 5071 | + * @description 刷新页面 用于在其他位置调用更新数据面板的操作,默认是个空函数,在生成数据源面板中进行了拓展 | 
| 5072 | */ | 5072 | */ | 
| 5073 | function echoRefreshFn() { | 5073 | function echoRefreshFn() { | 
| 5074 | } | 5074 | } | 
| 5075 | 5075 | ||
| 5076 | + /** | ||
| 5077 | + * @description 用于在其他位置获取数据源绑定的数据,在生成数据源面板中进行了改写 | ||
| 5078 | + */ | ||
| 5079 | + function getDataSourceBindValue() { | ||
| 5080 | + | ||
| 5081 | + } | ||
| 5082 | + | ||
| 5076 | 5083 | ||
| 5077 | // 获取url的请求参数函数 | 5084 | // 获取url的请求参数函数 | 
| 5078 | function getRequest() { | 5085 | function getRequest() { | 
| @@ -5154,6 +5161,9 @@ DataFormatPanel.prototype.addDataFont = function (container) { | @@ -5154,6 +5161,9 @@ DataFormatPanel.prototype.addDataFont = function (container) { | ||
| 5154 | await echoActionType() | 5161 | await echoActionType() | 
| 5155 | } | 5162 | } | 
| 5156 | 5163 | ||
| 5164 | + /** | ||
| 5165 | + * @description 回显动效类型 | ||
| 5166 | + */ | ||
| 5157 | async function echoActionType() { | 5167 | async function echoActionType() { | 
| 5158 | const act = currentNodeData.act ?? [] | 5168 | const act = currentNodeData.act ?? [] | 
| 5159 | const event = currentNodeData.event ?? [] | 5169 | const event = currentNodeData.event ?? [] | 
| @@ -5213,7 +5223,7 @@ DataFormatPanel.prototype.addDataFont = function (container) { | @@ -5213,7 +5223,7 @@ DataFormatPanel.prototype.addDataFont = function (container) { | ||
| 5213 | 5223 | ||
| 5214 | 5224 | ||
| 5215 | async function mount() { | 5225 | async function mount() { | 
| 5216 | - const { component, echoDataSource } = generatorDataSourceComponent({ validate: false }) | 5226 | + const { component, echoDataSource, getValue } = generatorDataSourceComponent({ validate: false }) | 
| 5217 | $(fragment).append(title).append(component) | 5227 | $(fragment).append(title).append(component) | 
| 5218 | $(container).append(fragment) | 5228 | $(container).append(fragment) | 
| 5219 | 5229 | ||
| @@ -5228,6 +5238,9 @@ DataFormatPanel.prototype.addDataFont = function (container) { | @@ -5228,6 +5238,9 @@ DataFormatPanel.prototype.addDataFont = function (container) { | ||
| 5228 | echoDataSource(dataSource) | 5238 | echoDataSource(dataSource) | 
| 5229 | form.render(null, CONTAINER_FILTER) | 5239 | form.render(null, CONTAINER_FILTER) | 
| 5230 | } | 5240 | } | 
| 5241 | + | ||
| 5242 | + // 改写获取数据源绑定的值 | ||
| 5243 | + getDataSourceBindValue = getValue | ||
| 5231 | } | 5244 | } | 
| 5232 | 5245 | ||
| 5233 | mount() | 5246 | mount() | 
| @@ -7618,17 +7631,31 @@ DataFormatPanel.prototype.addDataFont = function (container) { | @@ -7618,17 +7631,31 @@ DataFormatPanel.prototype.addDataFont = function (container) { | ||
| 7618 | // 异步设置此处才能生效 -- 设置默认select和样式和初始化侧边栏生成组件和事件绑定 | 7631 | // 异步设置此处才能生效 -- 设置默认select和样式和初始化侧边栏生成组件和事件绑定 | 
| 7619 | setTimeout(() => { | 7632 | setTimeout(() => { | 
| 7620 | 7633 | ||
| 7634 | + function proxyFn(fn) { | ||
| 7635 | + return (...args) => { | ||
| 7636 | + const currentDataSource = getDataSourceBindValue() || {} | ||
| 7637 | + | ||
| 7638 | + to(ConfigurationNodeApi.updateNodeInfo({ | ||
| 7639 | + configurationId, | ||
| 7640 | + contentId: currentPageId.id, | ||
| 7641 | + nodeId: graphId, | ||
| 7642 | + [enumCategory.DATA_SOURCE]: currentDataSource | ||
| 7643 | + })) | ||
| 7644 | + fn.apply(null, args) | ||
| 7645 | + } | ||
| 7646 | + } | ||
| 7647 | + | ||
| 7621 | // TODO 数据交互事件 | 7648 | // TODO 数据交互事件 | 
| 7622 | - $(`#${enumDynamicEffectType.IMAGE}`).click({ type: enumDynamicEffectType.IMAGE }, handleSettingVarImage); | 7649 | + $(`#${enumDynamicEffectType.IMAGE}`).click({ type: enumDynamicEffectType.IMAGE }, proxyFn(handleSettingVarImage)); | 
| 7623 | 7650 | ||
| 7624 | - $(`#${enumInteractionType.DOWN}`).click({ type: enumInteractionType.DOWN }, handleDownOrUpEvent); | ||
| 7625 | - $(`#${enumInteractionType.UP}`).click({ type: enumInteractionType.UP }, handleDownOrUpEvent); | ||
| 7626 | - $(`#${enumInteractionType.SINGLE}`).click({ type: enumInteractionType.SINGLE }, handleClickOrDbClick); | ||
| 7627 | - $(`#${enumInteractionType.DOUBLE}`).click({ type: enumInteractionType.DOUBLE }, handleClickOrDbClick); | 7651 | + $(`#${enumInteractionType.DOWN}`).click({ type: enumInteractionType.DOWN }, proxyFn(handleDownOrUpEvent)); | 
| 7652 | + $(`#${enumInteractionType.UP}`).click({ type: enumInteractionType.UP }, proxyFn(handleDownOrUpEvent)); | ||
| 7653 | + $(`#${enumInteractionType.SINGLE}`).click({ type: enumInteractionType.SINGLE }, proxyFn(handleClickOrDbClick)); | ||
| 7654 | + $(`#${enumInteractionType.DOUBLE}`).click({ type: enumInteractionType.DOUBLE }, proxyFn(handleClickOrDbClick)); | ||
| 7628 | // 数据动效事件 | 7655 | // 数据动效事件 | 
| 7629 | - $(`#${enumDynamicEffectType.FLASH}`).click({ type: enumDynamicEffectType.FLASH }, handleDataDynamicEffect); | ||
| 7630 | - $(`#${enumDynamicEffectType.DISPLAY}`).click({ type: enumDynamicEffectType.DISPLAY }, handleDataDynamicEffect); | ||
| 7631 | - $(`#${enumDynamicEffectType.ROTATE}`).click({ type: enumDynamicEffectType.ROTATE }, handleDataDynamicEffect); | 7656 | + $(`#${enumDynamicEffectType.FLASH}`).click({ type: enumDynamicEffectType.FLASH }, proxyFn(handleDataDynamicEffect)); | 
| 7657 | + $(`#${enumDynamicEffectType.DISPLAY}`).click({ type: enumDynamicEffectType.DISPLAY }, proxyFn(handleDataDynamicEffect)); | ||
| 7658 | + $(`#${enumDynamicEffectType.ROTATE}`).click({ type: enumDynamicEffectType.ROTATE }, proxyFn(handleDataDynamicEffect)); | ||
| 7632 | }); | 7659 | }); | 
| 7633 | }; | 7660 | }; | 
| 7634 | 7661 |