Ben Lin
2024-09-24 3bf0e1e45acfb85fb6054dc55d1c1204a6750998
src/views/components/GeneralModal.vue
@@ -33,6 +33,7 @@
  const rowKey = ref('');
  const returnFieldName = ref('');
  const schemas = ref([] as FormSchema[]);
  const which = ref('');
  //列表
  const ItemColumns = ref([] as BasicColumn[]);
@@ -41,21 +42,20 @@
  const emit = defineEmits(['success', 'register']);
  const checkedKeys = ref<Array<string | number>>([]);
  const checkedIds = ref<Array<string | number>>([]);
  const [registerTable, { reload, getForm }] = useTable({
  const [registerTable, { reload, getForm, setProps }] = useTable({
    title: '列表信息',
    api: getListByPage,
    searchInfo: searchInfo,
    columns: ItemColumns,
    formConfig: {
      labelWidth: 120,
      schemas,
      schemas: schemas.value,
    },
    useSearchForm: true,
    showTableSetting: false,
    rowKey: rowKey,
    rowSelection: {
      selectedRowKeys: checkedKeys,
      selectedRowKeys: checkedKeys.value,
      type: 'checkbox',
      // getCheckboxProps(record: Recordable) {
      //   // Demo: 第一行(id为0)的选择框禁用
@@ -80,6 +80,9 @@
  });
  const [register, { setModalProps, closeModal }] = useModalInner((data) => {
    setModalProps({ confirmLoading: false });
    setProps({
      dataSource: [],
    });
    data && onDataReceive(data);
  });
@@ -98,8 +101,9 @@
    rowKey.value = data?.rowKey;
    returnFieldName.value = data?.returnFieldName;
    checkedKeys.value = [];
    which.value = data?.which;
    getForm().resetFields();
    reload();
    // reload();
  }
  // function handleVisibleChange(v) {
@@ -113,6 +117,7 @@
        isUpdate: unref(false),
        values: { val: record[rowKey.value], id: record['ID'] },
        returnFieldName: returnFieldName.value,
        which: which.value,
      });
    } finally {
      setModalProps({ confirmLoading: false });
@@ -133,6 +138,7 @@
        isUpdate: unref(false),
        values: { val: values, id: ids },
        returnFieldName: returnFieldName.value,
        which: which.value,
      });
    } finally {
      setModalProps({ confirmLoading: false });