写一个vue3 在弹框页面写一个关闭按钮来关闭此弹窗,不用在父页面就能实现关闭
时间: 2024-03-05 13:49:13 浏览: 165
一个漂亮的前端弹窗,包含关闭按钮,样式清晰好看,可关闭弹窗
3星 · 编辑精心推荐
好的,以下是一个简单的示例代码:
在弹框页面中,可以添加一个关闭按钮,绑定一个关闭弹窗的方法:
```
<template>
<div class="popup">
<p>这是一个弹窗</p>
<button @click="closePopup">关闭</button>
</div>
</template>
<script>
import { ref } from 'vue';
export default {
setup() {
const isShowPopup = ref(true);
// 关闭弹窗方法
const closePopup = () => {
isShowPopup.value = false;
};
return {
isShowPopup,
closePopup,
};
},
};
</script>
<style scoped>
.popup {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: #fff;
padding: 20px;
border-radius: 4px;
box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
}
</style>
```
在父页面中,可以通过动态绑定的方式控制弹窗的显示和隐藏:
```
<template>
<div>
<button @click="isShowPopup = true">打开弹窗</button>
<div v-if="isShowPopup">
<Popup :closePopup="closePopup" />
</div>
</div>
</template>
<script>
import Popup from './Popup.vue';
import { ref } from 'vue';
export default {
components: {
Popup,
},
setup() {
const isShowPopup = ref(false);
// 关闭弹窗方法
const closePopup = () => {
isShowPopup.value = false;
};
return {
isShowPopup,
closePopup,
};
},
};
</script>
```
在父页面中通过动态绑定isShowPopup来控制弹窗的显示和隐藏,当isShowPopup为true时,弹窗显示;当isShowPopup为false时,弹窗隐藏。同时,将关闭弹窗的方法传递给子组件,以便在子组件中调用。
阅读全文