RabbitMQConfigForm.vue 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <template>
  2. <el-form-item label="主机地址" prop="config.host">
  3. <el-input v-model="config.host" placeholder="请输入主机地址,如:localhost" />
  4. </el-form-item>
  5. <el-form-item label="端口" prop="config.port">
  6. <el-input-number
  7. v-model="config.port"
  8. :max="65535"
  9. :min="1"
  10. controls-position="right"
  11. placeholder="请输入端口"
  12. />
  13. </el-form-item>
  14. <el-form-item label="虚拟主机" prop="config.virtualHost">
  15. <el-input v-model="config.virtualHost" placeholder="请输入虚拟主机" />
  16. </el-form-item>
  17. <el-form-item label="用户名" prop="config.username">
  18. <el-input v-model="config.username" placeholder="请输入用户名" />
  19. </el-form-item>
  20. <el-form-item label="密码" prop="config.password">
  21. <el-input v-model="config.password" placeholder="请输入密码" show-password type="password" />
  22. </el-form-item>
  23. <el-form-item label="交换机" prop="config.exchange">
  24. <el-input v-model="config.exchange" placeholder="请输入交换机" />
  25. </el-form-item>
  26. <el-form-item label="路由键" prop="config.routingKey">
  27. <el-input v-model="config.routingKey" placeholder="请输入路由键" />
  28. </el-form-item>
  29. <el-form-item label="队列" prop="config.queue">
  30. <el-input v-model="config.queue" placeholder="请输入队列" />
  31. </el-form-item>
  32. </template>
  33. <script lang="ts" setup>
  34. import { IoTDataBridgeConfigType, RabbitMQConfig } from '@/api/iot/rule/databridge'
  35. import { useVModel } from '@vueuse/core'
  36. import { isEmpty } from '@/utils/is'
  37. defineOptions({ name: 'RabbitMQConfigForm' })
  38. const props = defineProps<{
  39. modelValue: any
  40. }>()
  41. const emit = defineEmits(['update:modelValue'])
  42. const config = useVModel(props, 'modelValue', emit) as Ref<RabbitMQConfig>
  43. /** 组件初始化 */
  44. onMounted(() => {
  45. if (!isEmpty(config.value)) {
  46. return
  47. }
  48. config.value = {
  49. type: IoTDataBridgeConfigType.RABBITMQ,
  50. host: '',
  51. port: 5672,
  52. virtualHost: '/',
  53. username: '',
  54. password: '',
  55. exchange: '',
  56. routingKey: '',
  57. queue: ''
  58. }
  59. })
  60. </script>