Skip to content

Commit

Permalink
Merge pull request #11253 from allenve/fix-globalEventPanel
Browse files Browse the repository at this point in the history
fix: 全局广播事件配置面板
  • Loading branch information
allenve authored Nov 25, 2024
2 parents b696b2a + fa932d6 commit 833524b
Show file tree
Hide file tree
Showing 3 changed files with 78 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
import React from 'react';
import {registerActionPanel} from '../../actionsPanelManager';
import {getSchemaTpl, EditorManager} from 'amis-editor-core';

registerActionPanel('broadcast', {
label: '全局广播事件',
tag: '其他',
description: '触发全局广播事件',
innerArgs: [],
descDetail: (info: any, context: any, props: any) => {
const globalEvents = props.globalEvents || [];
const event = globalEvents.find(
(item: any) => item.name === info?.eventName
);
return (
<div>
触发
<span className="ml-1 mr-1">{event?.label || info?.eventName}</span>
全局广播事件
</div>
);
},
schema: (manager: EditorManager) => {
const globalEvents =
manager.config?.actionOptions?.globalEventGetter?.(manager) || [];
return {
type: 'wrapper',
body: [
{
type: 'select',
name: 'eventName',
required: true,
label: '请选择全局事件',
options: globalEvents.map(item => ({
label: item.label,
value: item.name,
mapping: item.mapping
})),
size: 'lg',
mode: 'horizontal',
initAutoFill: true,
autoFill: {
__mapping: '${mapping}'
},
onChange: async (val: any, oldVal: any, props: any, form: any) => {
form.setValueByName('data', void 0);
}
},
{
type: 'input-kv',
name: 'data',
label: '参数映射',
mode: 'horizontal',
draggable: false,
visibleOn: 'this.eventName',
keySchema: {
type: 'select',
label: false,
name: 'key',
source: '${ARRAYMAP(__mapping, i => i.key)}'
},
valueSchema: getSchemaTpl('tplFormulaControl', {
label: false,
name: 'value',
clearable: true,
placeholder: '请输入参数值',
variables: '${variables}',
header: '配置参数值'
})
}
]
};
}
});
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
import './copy';
import './custom';
import './broadcast';
Original file line number Diff line number Diff line change
Expand Up @@ -403,7 +403,9 @@ export const actionConfigInitFormatterHoc =
}
}

delete config.data;
if (config.actionType !== 'broadcast') {
delete config.data;
}

// 处理下 addItem 的初始化
if (action.actionType === 'addItem') {
Expand Down

0 comments on commit 833524b

Please sign in to comment.