Checkbox.vue 867 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <template>
  2. <v-checkbox
  3. :label="label"
  4. :disabled="disabled || readonly"
  5. :error-messages="errorMessages"
  6. :input-value="value"
  7. :required="required"
  8. :rules="[v => !required || !!v || 'Required.']"
  9. @change="change"
  10. />
  11. </template>
  12. <script>
  13. export default {
  14. name: 'Checkbox',
  15. props: {
  16. disabled: {
  17. type: Boolean,
  18. required: false,
  19. },
  20. errorMessages: {
  21. type: [String, Array],
  22. default: () => [],
  23. },
  24. label: {
  25. type: String,
  26. required: false,
  27. },
  28. readonly: {
  29. type: Boolean,
  30. required: false,
  31. },
  32. required: {
  33. type: Boolean,
  34. default: false,
  35. },
  36. value: {
  37. type: Boolean,
  38. required: true,
  39. },
  40. },
  41. methods: {
  42. change(event) {
  43. this.$emit('input', event);
  44. this.$emit('dirty', {target: this.$el});
  45. },
  46. },
  47. };
  48. </script>