Blame view

Yi.Vben5.Vue3/docs/src/demos/vben-modal/dynamic/modal.vue 915 Bytes
515fceeb   “wangming”   框架初始化
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
  <script lang="ts" setup>
  import { useVbenModal, VbenButton } from '@vben/common-ui';
  
  const [Modal, modalApi] = useVbenModal({
    draggable: true,
    onCancel() {
      modalApi.close();
    },
    onConfirm() {
      console.info('onConfirm');
    },
    title: '动态修改配置示例',
  });
  
  const state = modalApi.useStore();
  
  function handleUpdateTitle() {
    modalApi.setState({ title: '内部动态标题' });
  }
  
  function handleToggleFullscreen() {
    modalApi.setState((prev) => {
      return { ...prev, fullscreen: !prev.fullscreen };
    });
  }
  </script>
  <template>
    <Modal>
      <div class="flex-col-center">
        <VbenButton class="mb-3" type="primary" @click="handleUpdateTitle()">
          内部动态修改标题
        </VbenButton>
        <VbenButton class="mb-3" @click="handleToggleFullscreen()">
          {{ state.fullscreen ? '退出全屏' : '打开全屏' }}
        </VbenButton>
      </div>
    </Modal>
  </template>