addAppManage.vue 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <template>
  2. <el-form ref="ruleFormRef" style="max-width: 600px" :model="ruleForm" :rules="rules" label-width="100" label-suffix=":"
  3. class="demo-ruleForm" :size="formSize" status-icon >
  4. <el-form-item label="应用名称" prop="name">
  5. <el-input v-model="ruleForm.name" placeholder="请输入应用名称"/>
  6. </el-form-item>
  7. <el-form-item label="应用编码" prop="code">
  8. <el-input v-model="ruleForm.code" placeholder="请输入应用编码"/>
  9. </el-form-item>
  10. <el-form-item label="应用地址" prop="address">
  11. <el-input v-model="ruleForm.address" placeholder="请输入应用地址"/>
  12. </el-form-item>
  13. <el-form-item label="端口" prop="port">
  14. <el-input v-model="ruleForm.port" placeholder="请输入端口"/>
  15. </el-form-item>
  16. <el-form-item label="备注">
  17. <el-input v-model="ruleForm.remark" type="textarea" :autosize="{ minRows: 4, maxRows: 6}" placeholder="请输入备注" maxlength="300" show-word-limit/>
  18. </el-form-item>
  19. </el-form>
  20. </template>
  21. <script lang="ts" setup>
  22. import {reactive, ref} from 'vue'
  23. import type {ComponentSize, FormInstance, FormRules} from 'element-plus'
  24. interface RuleForm {
  25. name: string
  26. code: string
  27. address: string
  28. port: number
  29. remark: string
  30. }
  31. const formSize = ref<ComponentSize>('default')
  32. const ruleFormRef = ref<FormInstance>()
  33. const ruleForm = reactive<RuleForm>({
  34. name: '',
  35. code: '',
  36. address: '',
  37. port: null,
  38. remark: '',
  39. })
  40. const rules = reactive<FormRules<RuleForm>>({
  41. name: [
  42. {required: true, message: '应用名称不能为空', trigger: 'change'},
  43. {min: 2, max: 6, message: '字符长度在 2 到 6 个字符', trigger: 'change'},
  44. ],
  45. code: {required: true, message: '应用编码不能为空', trigger: 'change',},
  46. address: {required: true, message: '应用地址不能为空', trigger: 'change',},
  47. port: {required: true, message: '端口不能为空', trigger: 'change',}
  48. })
  49. const submitForm = async (formEl: FormInstance | undefined) => {
  50. if (!formEl) return
  51. await formEl.validate((valid, fields) => {
  52. if (valid) {
  53. console.log('submit!')
  54. } else {
  55. console.log('error submit!', fields)
  56. }
  57. })
  58. }
  59. const resetForm = (formEl: FormInstance | undefined) => {
  60. if (!formEl) return
  61. formEl.resetFields()
  62. }
  63. </script>