vue组件实现弹出框点击显示隐藏效果


Posted in Javascript onOctober 26, 2020

本文实例为大家分享了vue实现弹出框点击显示隐藏的具体代码,供大家参考,具体内容如下

效果如下图

vue组件实现弹出框点击显示隐藏效果 

由于我的更改密码弹出框是一个组件引用的,所以在一开始是隐藏的,这就需要在当前的页面上对弹出框组件设置v-show,但是在弹出框显示出来的时候,操作执行完后当前页面的更改按钮已经被弹出框覆盖了。所以只能在弹出页面点击取消实现关闭隐藏弹出框。这样就需要写两个点击事件,但是两个点击事件就会有冲突,需要点击两下才能使弹出框显示和隐藏。然后我就用的以下方法,希望可以帮到大家!!!

代码如下

1.在当前页面中(主页面)

<template>
 ......
 <ul>
 <li><span @click="ModifyPassword()">更改密码</span></li> //点击事件
 </ul>
 ......
 //组件传一个点击事件@hidden="hiddenShow",而这个点击事件就是下面的hiddenShow()函数
 <ModifyPassword @hidden="hiddenShow" v-show="ModifyPassword_pop_up"> </ModifyPassword> //调用组件
</template>
<script>
 import ModifyPassword from '@/components/pop-up/ModifyPassword.vue //引入组件
 export default {
 data(){
 return{
 date:'',
 ModifyPassword_pop_up:false,
 history_pop_up:false
 }
 },
 components:{
 ModifyPassword //引用组件
 },
 methods:{
 //更改密码弹出框显示(组件引用的弹出框)
 ModifyPassword(){
 this.ModifyPassword_pop_up=true
 },
 //更改密码弹出框隐藏(传给组件一个点击事件)
 hiddenShow(){
 let that = this;
 that.ModifyPassword_pop_up = false
 }
 }
 }
</script>

2.在弹出框组件页面中(更改密码)

<template>
 ......
 <div class="foot">
  <input type="button" name="OK" value="提交" class="yes" >
  //在取消按钮这里调用点击事件
  <input type="button" name="cancel" value="取消" class="no" @click="Hidden()">
  </div>
 ......
</ModifyPassword> 
</template>
<script>
 export default {
 data(){
 return{}
 },
 methods:{
 //本更改密码弹出框的显示隐藏事件
 Hidden(){
 //通过$emit引用组件传过来的hidden()事件
 this.$emit('hidden')
 }
 }
 }
</script>

虽然Vue 有很多UI组件。但是让内容比较多比较复杂的时候,还是需要自己写一个的。本案主要是运用了$emit监听,组件传事件。如果有更好的方案欢迎大家一起交流。

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

更多vue学习教程请阅读专题《vue实战教程》

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery EasyUI API 中文文档 可调整尺寸
Sep 29 Javascript
JavaScript实现x秒后自动跳转到一个页面
Jan 03 Javascript
在js中判断checkboxlist(.net控件客户端id)是否有选中
Apr 11 Javascript
node.js中的http.createClient方法使用说明
Dec 15 Javascript
简单谈谈javascript中的变量、作用域和内存问题
Aug 30 Javascript
JavaScript获取function所有参数名的方法
Oct 30 Javascript
Javascript中this绑定的3种方法与比较
Oct 13 Javascript
vue实现商城购物车功能
Nov 27 Javascript
Thinkjs3新手入门之添加一个新的页面
Dec 06 Javascript
Vue路由之JWT身份认证的实现方法
Aug 26 Javascript
微信小程序 checkbox使用实例解析
Sep 09 Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
Nov 29 Javascript
vue.extend实现alert模态框弹窗组件
Apr 28 #Javascript
总结JavaScript在IE9之前版本中内存泄露问题
Apr 28 #Javascript
vue-baidu-map 进入页面自动定位的解决方案(推荐)
Apr 28 #Javascript
Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能
Apr 28 #Javascript
React native ListView 增加顶部下拉刷新和底下点击刷新示例
Apr 27 #Javascript
React Native日期时间选择组件的示例代码
Apr 27 #Javascript
vue实现点击展开点击收起效果
Apr 27 #Javascript
You might like
用php实现让页面只能被百度gogole蜘蛛访问的方法
2009/12/29 PHP
Wordpress 相册插件 NextGEN-Gallery 添加目录将中文转为拼音的解决办法
2010/12/29 PHP
php学习之数据类型之间的转换介绍
2011/06/09 PHP
PHP技术开发微信公众平台
2015/07/22 PHP
thinkphp跨库操作的简单代码实例
2016/09/22 PHP
PHP解决中文乱码
2017/04/28 PHP
在js(jquery)中获得文本框焦点和失去焦点的方法
2012/12/04 Javascript
深入浅析JavaScript中对事件的三种监听方式
2015/09/29 Javascript
JQuery在循环中绑定事件的问题详解
2016/06/02 Javascript
详解vue.js 开发环境搭建最简单攻略
2017/06/12 Javascript
浅谈ECMAScript6新特性之let、const
2017/08/02 Javascript
vue 设置proxyTable参数进行代理跨域
2018/04/09 Javascript
jQuery实现获取及设置CSS样式操作详解
2018/09/05 jQuery
微信小程序之下拉列表实现方法解析(附完整源码)
2019/08/23 Javascript
js根据后缀判断文件文件类型的代码
2020/05/09 Javascript
[41:37]DOTA2北京网鱼队选拔赛——冲击职业之路
2015/04/13 DOTA
[48:27]EG vs Liquid 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
Python读取键盘输入的2种方法
2015/06/16 Python
python中 chr unichr ord函数的实例详解
2017/08/06 Python
详解python里使用正则表达式的分组命名方式
2017/10/24 Python
基于Python中numpy数组的合并实例讲解
2018/04/04 Python
python实现随机漫步方法和原理
2019/06/10 Python
new_zeros() pytorch版本的转换方式
2020/02/18 Python
python闭包、深浅拷贝、垃圾回收、with语句知识点汇总
2020/03/11 Python
使用python图形模块turtle库绘制樱花、玫瑰、圣诞树代码实例
2020/03/16 Python
python中count函数知识点浅析
2020/12/17 Python
Dillard’s百货官网:Dillards.com
2018/05/26 全球购物
个人自我鉴定总结
2014/03/25 职场文书
租赁协议书范本
2014/04/22 职场文书
运动员获奖感言
2014/08/15 职场文书
2014年仓管员工作总结
2014/11/18 职场文书
2014年残联工作总结
2014/11/21 职场文书
学生早退检讨书(范文)
2019/08/19 职场文书
MySQL安装后默认自带数据库的作用详解
2021/04/27 MySQL
Django如何与Ajax交互
2021/04/29 Python
总结Python使用过程中的bug
2021/06/18 Python