// 创建递归的菜单配置 const createMenuConfig = () => ({ items: [ ...baseMenuItemConfig.items, { name: 'children', title: '子菜单项', setter: { componentName: 'ArraySetter', props: { itemSetter: { componentName: 'ObjectSetter', props: { config: baseMenuItemConfig } } } } } ] }); // 定义基础菜单项配置 const baseMenuItemConfig = { items: [ { name: 'label', title: '文字', setter: 'StringSetter', isRequired: true, defaultValue: '文字', }, { name: 'onClick', title: '点击事件', isRequired: true, setter: { componentName: 'FunctionSetter', props: { supportParams: true, } }, }, { title: '状态', display: 'block', type: 'group', items: [ { name: 'show', title: '是否显示', setter: 'BoolSetter', defaultValue: true, } ] } ] }; export default { name: 'contextMenuItems', title: { label: '右键菜单,无需配置,由UI Action自动生成', tip: '右键菜单配置,即使配置了也不会生效' }, disabled:true, propType: 'object', setter: { componentName: 'ArraySetter', props: { itemSetter: { componentName: 'ObjectSetter', props: { config: createMenuConfig() }, }, }, }, }