Ant Design Vue Modal组件是一种弹出式窗口,用于显示重要信息、收集用户输入或提供附加功能,而不会干扰主界面。它广泛应用于各种应用程序,包括表单、确认对话框、信息提示和自定义界面。
此代码演示了如何在Vue.js中使用Ant Design Vue Modal组件。它创建了三个模态窗口,每个窗口具有不同的内容和配置。用户可以通过单击按钮打开模态窗口,并使用提供的按钮关闭或保存更改。
<script lang="tsx" setup>
import { ref } from "vue";
import { MessageOutlined } from '@ant-design/icons-vue';
const title = "Basic Modal";
const footer = {
okText: "Close",
cancelText: "Save",
afterClose: () => {
console.log("modal closed");
},
};
const modal1Visible = ref(false);
const modal2Visible = ref(false);
const modal3Visible = ref(false);
</script>
ref
创建三个布尔状态变量,用于跟踪每个模态窗口的可见性。<template>
<div class="bg-white">
<div class="max-w-sm mx-auto p-6">
<div class="flex items-center justify-between">
<h2 class="text-lg font-semibold text-gray-900">Modal</h2>
<div class="flex items-center space-x-4">
<a-button type="primary" @click="handleOpen">Open</a-button>
</div>
</div>
<!-- ... -->
</div>
</div>
</template>
<script lang="tsx" setup>
const handleOpen = () => {
modal1Visible.value = true;
};
</script>
handleOpen
方法。handleOpen
方法将modal1Visible
状态设置为true
,从而打开第一个模态窗口。<a-modal v-model="modal1Visible" :title="title" :centered :closable="false" :footer="footer">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis et sodales purus.</p>
</a-modal>
a-modal
组件创建模态窗口。v-model
绑定到相应的可见性状态(modal1Visible
)。title
、centered
、closable
和footer
属性。const footer = {
okText: "Close",
cancelText: "Save",
afterClose: () => {
console.log("modal closed");
},
};
okText
和cancelText
属性分别设置“确定”和“取消”按钮的文本。afterClose
回调函数在模态窗口关闭后执行。.ant-modal-body {
max-height: 70vh;
overflow-y: auto;
}
开发这段代码的过程加深了对Ant Design Vue Modal组件的理解。它展示了如何创建和配置基本模态窗口,包括标题、内容、页脚和样式定制。
未来,该卡片功能可以扩展和优化,例如: