跳到主要内容

JModal

JModal:原生a-modal封装,支持a-modal所有特性

参数配置

参数类型必填说明
fullscreenboolean非必填是否默认全屏
canFullscreenboolean非必填是否显示全屏按钮
afterClosefunction非必填Modal 完全关闭后的回调
bodyStyleobject非必填Modal body 样式
cancelButtonPropsButtonProps非必填cancel 按钮 props
centeredboolean非必填垂直居中展示 Modal
closableboolean非必填是否显示右上角的关闭按钮
closeIconslot非必填自定义关闭图标
confirmLoadingboolean非必填确定按钮 loading
destroyOnCloseboolean非必填关闭时销毁 Modal 里的子元素
footerstringslot非必填
forceRenderboolean非必填强制渲染 Modal
getContainer(instance): HTMLElement非必填指定 Modal 挂载的 HTML 节点
keyboardboolean非必填是否支持键盘 esc 关闭
maskboolean非必填是否展示遮罩
maskClosableboolean非必填点击蒙层是否允许关闭
maskStyleobject非必填遮罩样式
okButtonPropsButtonProps非必填ok 按钮 props
okTextstringslot非必填
cancelTextstringslot非必填
okTypestring非必填确认按钮类型
titlestring非必填标题
openboolean非必填对话框是否可见
widthstringnumber非必填
wrapClassNamestring非必填对话框外层容器的类名

更多属性事件详见 Modal

效果展示

使用示例

<template>
<JModal :title="title" :width="width" v-model:open="visible" @ok="handleOk" :okButtonProps="{ class: { 'jee-hidden': disableSubmit } }" @cancel="handleCancel" cancelText="关闭">
</JModal>
</template>

<script lang="ts" setup>
import { ref } from 'vue';
import JModal from '/@/components/Modal/src/JModal/JModal.vue';

const title = ref<string>('');
const width = ref<number>(800);
const visible = ref<boolean>(false);
const disableSubmit = ref<boolean>(false);

/**
* 确定按钮点击事件
*/
function handleOk() {}

/**
* 取消按钮回调事件
*/
function handleCancel() {
visible.value = false;
}
</script>