size-control.vue 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <template>
  2. <div>
  3. <el-radio-group v-model="size" label="size control">
  4. <el-radio-button label="large">large</el-radio-button>
  5. <el-radio-button label="default">default</el-radio-button>
  6. <el-radio-button label="small">small</el-radio-button>
  7. </el-radio-group>
  8. <el-radio-group v-model="labelPosition" label="position control">
  9. <el-radio-button label="left">Left</el-radio-button>
  10. <el-radio-button label="right">Right</el-radio-button>
  11. <el-radio-button label="top">Top</el-radio-button>
  12. </el-radio-group>
  13. </div>
  14. <br />
  15. <el-form ref="form" :model="sizeForm" label-width="auto" :label-position="labelPosition" :size="size">
  16. <el-form-item label="Activity name">
  17. <el-input v-model="sizeForm.name" />
  18. </el-form-item>
  19. <el-form-item label="Activity zone">
  20. <el-select v-model="sizeForm.region" placeholder="please select your zone">
  21. <el-option label="Zone one" value="shanghai" />
  22. <el-option label="Zone two" value="beijing" />
  23. </el-select>
  24. </el-form-item>
  25. <el-form-item label="Activity time">
  26. <el-col :span="11">
  27. <el-date-picker v-model="sizeForm.date1" type="date" label="Pick a date" placeholder="Pick a date" style="width: 100%" />
  28. </el-col>
  29. <el-col class="text-center" :span="1" style="margin: 0 0.5rem">-</el-col>
  30. <el-col :span="11">
  31. <el-time-picker v-model="sizeForm.date2" label="Pick a time" placeholder="Pick a time" style="width: 100%" />
  32. </el-col>
  33. </el-form-item>
  34. <el-form-item label="Activity type">
  35. <el-checkbox-group v-model="sizeForm.type">
  36. <el-checkbox-button label="Online activities" name="type" />
  37. <el-checkbox-button label="Promotion activities" name="type" />
  38. </el-checkbox-group>
  39. </el-form-item>
  40. <el-form-item label="Resources">
  41. <el-radio-group v-model="sizeForm.resource">
  42. <el-radio border label="Sponsor" />
  43. <el-radio border label="Venue" />
  44. </el-radio-group>
  45. </el-form-item>
  46. <el-form-item>
  47. <el-button type="primary" @click="onSubmit">Create</el-button>
  48. <el-button>Cancel</el-button>
  49. </el-form-item>
  50. </el-form>
  51. </template>
  52. <script lang="ts" setup>
  53. import { reactive, ref } from 'vue'
  54. const size = ref('default')
  55. const labelPosition = ref('right')
  56. const sizeForm = reactive({
  57. name: '',
  58. region: '',
  59. date1: '',
  60. date2: '',
  61. delivery: false,
  62. type: [],
  63. resource: '',
  64. desc: '',
  65. })
  66. function onSubmit() {
  67. console.log('submit!')
  68. }
  69. </script>
  70. <style>
  71. .el-radio-group {
  72. margin-right: 12px;
  73. }
  74. </style>