前菜
为了很好的讲解传送门的意思,我们需要用一个常用的例子去学,那就是弹出层会用到的透明蒙版。
<script>
const app = Vue.createApp({
data(){
return {
show: false
}
},
methods: {
handleClick(){
this.show = !this.show
}
},
template: `
<div class="box">
<button @click="handleClick">点击</button>
<div class="mask" v-if="show" @click="handleClick"></div>
</div>
`
});
const vm = app.mount('#root');
</script>
-
定义一个模板,里面有一个盒子,盒子里面包裹了一个按钮和一个蒙版
-
点击按钮时蒙版显示,点击蒙版时蒙版消失
<style>
.box{
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 200px;
height: 200px;
background-color: #f4ef4e;