DataFlowMethodIsKafka.vue 1.15 KB
<template>
  <div>
    <BasicForm @register="register" />
  </div>
</template>
<script lang="ts" setup name="DataFlowMethodIsKafka">
  import { BasicForm, useForm } from '/@/components/Form';
  import { modelKafkaForm } from './config';
  import { modelFormPublicConfig } from '../../../dataflowmodal/config';

  const [register, { validate, setFieldsValue, resetFields, setProps, updateSchema }] = useForm({
    schemas: modelKafkaForm,
    ...modelFormPublicConfig,
  });

  const getValue = async () => {
    const values = await validate();
    if (!values) return;
    return values;
  };

  const setValue = (value) => {
    setFieldsValue(value);
  };

  // 禁用表单
  const setDisabledProps = (value) => {
    setProps(value);
    updateSchema({ field: 'otherProperties', componentProps: { disabled: true } });
  };

  // 取消禁用
  const setCancelDisabled = () => {
    updateSchema({ field: 'otherProperties', componentProps: { disabled: false } });
  };

  const resetValue = () => resetFields();
  defineExpose({
    getValue,
    setValue,
    resetValue,
    setDisabledProps,
    setCancelDisabled,
  });
</script>

<style lang="less" scoped></style>