| | |
| | | getTabsForms = () => { |
| | | const { tabs } = this.state |
| | | |
| | | return getTabsSetForm(tabs.setting) |
| | | return getTabsSetForm(tabs.setting, tabs.uuid) |
| | | } |
| | | |
| | | updateTabs = (res) => { |
| | |
| | | import MenuUtils from '@/utils/utils-custom.js' |
| | | |
| | | /** |
| | | * @description Wrap表单配置信息 |
| | | */ |
| | |
| | | // span: 22 |
| | | // }, |
| | | { |
| | | type: 'text', |
| | | field: 'controlVal', |
| | | label: '隐藏标记', |
| | | initval: tab.controlVal || '', |
| | | tooltip: '当禁用字段值与隐藏标记相等时,标签页会隐藏。', |
| | | required: false |
| | | }, |
| | | { |
| | | type: 'color', |
| | | field: 'backgroundColor', |
| | | label: '背景(内容区)', |
| | |
| | | /** |
| | | * @description tabs表单配置信息 |
| | | */ |
| | | export function getTabsSetForm(setting) { |
| | | export function getTabsSetForm(setting, uuid) { |
| | | let modules = MenuUtils.getSupModules(window.GLOB.customMenu.components, uuid) || [] |
| | | |
| | | const tabForm = [ |
| | | { |
| | | type: 'text', |
| | |
| | | ], |
| | | }, |
| | | { |
| | | type: 'cascader', |
| | | field: 'supModule', |
| | | label: '上级组件', |
| | | initval: setting.supModule || [], |
| | | tooltip: '标签组可以选择上级组件,填入禁用字段,用于控制标签隐藏。', |
| | | required: false, |
| | | allowClear: true, |
| | | options: modules, |
| | | controlFields: [ |
| | | {field: 'controlField', notNull: true}, |
| | | ], |
| | | }, |
| | | { |
| | | type: 'text', |
| | | field: 'controlField', |
| | | label: '禁用字段', |
| | | initval: setting.controlField || '', |
| | | tooltip: '用于控制标签隐藏的字段,在标签中填入隐藏标记。', |
| | | required: true |
| | | }, |
| | | { |
| | | type: 'color', |
| | | field: 'backgroundColor', |
| | | label: '背景(标题栏)', |
| | |
| | | val = data[card.field] |
| | | } |
| | | |
| | | if (val === '' && card.noValue === 'hide') { // 空值隐藏 |
| | | if (!val && card.noValue === 'hide') { // 空值隐藏 |
| | | return null |
| | | } |
| | | |
| | |
| | | if (pickup && setting.tableType === 'checkbox' && keys.length > 0) { |
| | | this.setState({ |
| | | data: data, |
| | | edData: fromJS(data).toJS().filter(item => keys.includes(item.$$uuid)) |
| | | edData: fromJS(data).toJS().filter(item => { |
| | | item.$origin = false |
| | | |
| | | return keys.includes(item.$$uuid) |
| | | }) |
| | | }) |
| | | } else { |
| | | this.setState({ |
| | |
| | | tabs: {...tabs, subtabs: this.props.config.subtabs} |
| | | }) |
| | | } else { |
| | | let val = data[tabs.setting.controlField] |
| | | let val = data[tabs.setting.controlField] + '' |
| | | this.setState({ |
| | | tabs: {...tabs, subtabs: this.props.config.subtabs.filter(tab => { |
| | | if (tab.controlVal === val) { |