vben:对话框组件

本文将介绍如何在vben admin vue 框架中,创建对话框组件,并成功应用的代码。代码即插即用。

结果如下图所示,

一、创建对话框组件

创建 myModal/index.vue

javascript 复制代码
<template>
  <div>
    <BasicModal
      @register="registerModal"
      v-bind="$attrs"
      title="示例对话框"
      @ok="handleSubmit"
      width="58%"
    >
      <p>这是示例内容</p>
    </BasicModal>
  </div>
</template>
<script lang="ts" setup>
  import { BasicModal, useModalInner } from '/@/components/Modal';
  const [registerModal, { closeModal, setModalProps }] = useModalInner(async (data: any) => {
    setModalProps({ confirmLoading: false });
    console.log(data);
  });
  const handleSubmit = () => {
    closeModal();
  };
</script>

二、应用对话框组件

javascript 复制代码
<template>
  <div class="more"  @click="showModal">
    <span class="more-span">点击显示对话框</span>
    <i class="arrow"></i>
  </div>
  <myModal width="50%" @register="modalOpen" @success="handleSuccess" ></myModal>
</template>

<script lang="ts" setup>
  import { ref } from 'vue';
  import myModal from './myModal/index.vue';
  import { useModal } from '/@/components/Modal';
  const [modalOpen, { openModal }] = useModal();

  // true时显示。
  const showModal = (record: any) => {
    openModal(true, { isUpdate: true, record });
  };
</script>
相关推荐
珊瑚怪人2 天前
分享一个Edge浏览器播放H265 RTSP流的问题,涉及到ZLMediaKit、WebRTC
音视频·视频·js·zlmediakit·视频流处理
sp42a2 天前
NativeScript ListView 实现固定分区标题
vue·nativescript
双普拉斯2 天前
打造工业级全栈文件管理器:深度解析上传、回收站与三重下载流控技术
spring·vue·js
码界筑梦坊2 天前
356-基于Python的网易新闻数据分析系统
python·mysql·信息可视化·数据分析·django·vue·毕业设计
吴声子夜歌2 天前
Vue3——渲染函数
前端·vue.js·vue·es6
2501_913680003 天前
Vue3项目快速接入AI助手的终极方案 - 让你的应用智能升级
前端·vue.js·人工智能·ai·vue·开源软件
吕永强3 天前
基于SpringBoot+Vue校园报修系统的设计与实现(源码+论文+部署)
vue·毕业设计·springboot·毕业论文·报修系统·校园报修
阿部多瑞 ABU3 天前
《智能学号抽取系统》V5.9.5 发布:精简代码,修复移动端文件读取核心 Bug
vue·html·bug
zhensherlock3 天前
Protocol Launcher 系列:Overcast 一键订阅播客
前端·javascript·typescript·node.js·自动化·github·js
吴声子夜歌5 天前
Vue3——表单元素绑定
前端·vue·es6