BookInfoDialog.vue 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <template>
  2. <Dialog ref="dialog" v-model="dialogVisible">
  3. <template #header>
  4. <div class="row items-center">
  5. <div style="font-size: 110%">
  6. Информация о книге
  7. </div>
  8. </div>
  9. </template>
  10. <div ref="box" class="column q-mt-xs overflow-auto no-wrap" style="width: 200px; padding: 0px 10px 10px 10px;">
  11. </div>
  12. <template #footer>
  13. <q-btn class="q-px-md q-ml-sm" color="primary" dense no-caps @click="okClick">
  14. OK
  15. </q-btn>
  16. </template>
  17. </Dialog>
  18. </template>
  19. <script>
  20. //-----------------------------------------------------------------------------
  21. import vueComponent from '../../vueComponent.js';
  22. import Dialog from '../../share/Dialog.vue';
  23. const componentOptions = {
  24. components: {
  25. Dialog
  26. },
  27. watch: {
  28. modelValue(newValue) {
  29. this.dialogVisible = newValue;
  30. },
  31. dialogVisible(newValue) {
  32. this.$emit('update:modelValue', newValue);
  33. },
  34. }
  35. };
  36. class BookInfoDialog {
  37. _options = componentOptions;
  38. _props = {
  39. modelValue: Boolean,
  40. };
  41. dialogVisible = false;
  42. created() {
  43. this.commit = this.$store.commit;
  44. }
  45. mounted() {
  46. }
  47. okClick() {
  48. this.dialogVisible = false;
  49. }
  50. }
  51. export default vueComponent(BookInfoDialog);
  52. //-----------------------------------------------------------------------------
  53. </script>
  54. <style scoped>
  55. </style>