king
2021-09-28 432b788acf901b0720184b8ee8bc81a2e6fa47e0
src/menu/components/card/cardcomponent/options.jsx
@@ -1,7 +1,7 @@
/**
 * @description Setting表单配置信息
 */
export default function (setting, hasPrimaryKey) {
export default function (setting, hasPrimaryKey, buttons = []) {
  let appType = sessionStorage.getItem('appType')
  let menulist = []
@@ -12,7 +12,7 @@
    if (appmenulist) {
      try {
        appmenulist = JSON.parse(appmenulist)
      } catch {
      } catch (e) {
        appmenulist = []
      }
    } else {
@@ -23,7 +23,7 @@
    if (menulist) {
      try {
        menulist = JSON.parse(menulist)
      } catch {
      } catch (e) {
        menulist = []
      }
    } else {
@@ -82,7 +82,7 @@
      field: 'primaryId',
      label: '主键值',
      initval: setting.primaryId || '',
      tooltip: '卡片点击时,向其他组件传递的ID值。',
      tooltip: '设置一个属性卡静态ID,向其他组件传递的指定静态ID值',
      required: false,
      forbid: !hasPrimaryKey
    },
@@ -101,29 +101,19 @@
      ],
      controlFields: [
        {field: 'menu', values: ['menu']},
        {field: 'appmenu', values: ['menu']},
        {field: 'linkurl', values: ['link']},
        {field: 'open', values: ['menu', 'link']},
        {field: 'joint', values: ['menu', 'link']},
        {field: 'linkbtn', values: ['button']},
      ]
    },
    {
      type: 'cascader',
      type: appType ? 'select' : 'cascader',
      field: 'menu',
      label: '菜单',
      initval: setting.menu || [],
      required: true,
      options: menulist,
      forbid: !!appType
    },
    {
      type: 'select',
      field: 'appmenu',
      label: '关联菜单',
      initval: setting.menu || '',
      initval: setting.menu || (appType ? '' : []),
      required: true,
      options: appmenulist,
      forbid: !appType
      options: appType ? appmenulist : menulist,
    },
    {
      type: 'textarea',
@@ -157,6 +147,14 @@
        {value: 'false', label: '否'},
      ],
    },
    {
      type: 'select',
      field: 'linkbtn',
      label: '关联按钮',
      initval: setting.linkbtn || '',
      required: true,
      options: buttons
    }
  ]
  return cardSettingForm