vue如何通过点击事件弹出弹窗页面详解
短信预约 -IT技能 免费直播动态提醒
步骤一
创建一个弹窗页面,我们给该页面命名为dialogComponent,弹窗页面中要设置以下内容:
<template>
<!--1.首先,弹窗页面中要有el-dialog组件即弹窗组件,我们把弹窗中的内容放在el-dialog组件中-->
<!--2.设置:visible.sync属性,动态绑定一个布尔值,通过这个属性来控制弹窗是否弹出-->
<el-dialog title="弹窗" :visible.sync="detailVisible" width="35%">
弹窗内容
</el-dialog>
</template>
<script>
export default {
name: "dialogComponent",
data(){
return{
detailVisible:false
}
},
methods:{
//3.定义一个init函数,通过设置detailVisible值为true来让弹窗弹出,这个函数会在父组件的方法中被调用
init(data){
this.detailVisible=true;
//data是父组件弹窗传递过来的值,我们可以打印看看
console.log(data);
}
}
}
</script>
步骤二
在父组件中引入弹窗组件,并通过点击事件弹出弹窗,父组件主要设置以下内容:
<template>
<!-- 6.定义一个点击事件-->
<button @click="handleClick('父组件')">点击</button>
<!-- 3.在页面中使用dialog-component组件-->
<!-- 4.设置v-if语句,通过动态改变Visiable值用来控制弹窗是否弹出-->
<!-- 5.设置ref属性,相当于唯一标识dialog-component组件-->
<dialog-component v-if="Visiable" ref="dialog"></dialog-component>
</template>
<script>
// 1.引入弹窗组件dialogComponent
import dialogComponent from "./dialogComponent";
export default {
// 2.在components中注册dialogComponent组件
components:{
dialogComponent
},
data(){
return{
Visible:false
}
},
methods:{
// 7.实现点击事件,点击事件一定要包含以下内容
handleClick(data){
this.Visible=true;
this.$nextTick(()=>{
//这里的dialog与上面dialog-component组件里面的ref属性值是一致的
//init调用的是dialog-component组件里面的init方法
//data是传递给弹窗页面的值
this.$refs.dialog.init(data);
})
},
}
}
</script>
注:vue组件在定义的时候使用驼峰命名,但是在使用的时候要转化为短横线命名!
总结
到此这篇关于vue如何通过点击事件弹出弹窗页面的文章就介绍到这了,更多相关vue弹出弹窗页面内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341