end.vue 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <template>
  2. <div>
  3. <el-form ref="formRef" :model="form" label-width="120px" size="small" :disabled="disabled">
  4. <slot name="form-item-task-name" :model="form" field="nodeCode">
  5. <el-form-item label="节点编码">
  6. <el-input v-model="form.nodeCode" :disabled="disabled"></el-input>
  7. </el-form-item>
  8. </slot>
  9. <slot name="form-item-task-name" :model="form" field="nodeName">
  10. <el-form-item label="节点名称">
  11. <el-input v-model="form.nodeName" :disabled="disabled"></el-input>
  12. </el-form-item>
  13. </slot>
  14. </el-form>
  15. </div>
  16. </template>
  17. <script setup lang="ts">
  18. const props = defineProps({
  19. modelValue: {
  20. type: Object,
  21. default() {
  22. return {}
  23. }
  24. },
  25. disabled: {
  26. // 是否禁止
  27. type: Boolean,
  28. default: false
  29. }
  30. })
  31. const form = ref(props.modelValue)
  32. const emit = defineEmits(['change'])
  33. watch(
  34. () => form,
  35. (n) => {
  36. if (n) {
  37. emit('change', n)
  38. }
  39. },
  40. { deep: true }
  41. )
  42. </script>
  43. <style scoped></style>