• 技术文章 >web前端 >js教程

    如何使用vue组件实现弹出框点击显示隐藏

    php中世界最好的语言php中世界最好的语言2018-06-01 17:22:48原创3420
    这次给大家带来如何使用vue组件实现弹出框点击显示隐藏,使用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>
      ......
      <p class="foot">
          <input type="button" name="OK" value="提交" class="yes" >
          //在取消按钮这里调用点击事件
          <input type="button" name="cancel" value="取消" class="no" @click="Hidden()">
         </p>
      ......
    </ModifyPassword> 
    </template>
    <script>
     export default {
      data(){
       return{}
      },
      methods:{
       //本更改密码弹出框的显示隐藏事件
       Hidden(){
        //通过$emit引用组件传过来的hidden()事件
        this.$emit('hidden')
       }
      }
     }
    </script>

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

    相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

    推荐阅读:

    如何使用Vue实现点击时间获取时间段查询

    怎样操作js实现二级菜单点击显示当前内容

    以上就是如何使用vue组件实现弹出框点击显示隐藏的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:弹出 实现 组件
    上一篇:如何使用Vue实现点击时间获取时间段查询 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • react 怎么实现按需加载• 聊聊Node中怎么用async函数• 浅析Angular中怎么结合使用FormArray和模态框• react怎么实现滚动条• 一文聊聊node文件的读写操作
    1/1

    PHP中文网