h5弹窗时 点击手机物理返回键 关闭弹窗 不跳页面

window.history.pushState(null, null, "#");  //  在打开弹窗的方法里面写这个

export default {

  name: "set",

  data() {

    return {

      popstanub: -1,

    }

  },

  components: {

      detailsheader

  },

  beforeDestroy(){

  Dialog.close()

  },

  created() {

  },

  destroyed(){

    window.removeEventListener('popstate',this.popState,false)

  },

  activated() {

    window.addEventListener('popstate',this.popState,false)

  },

  methods: {

    popState(){

      if(this.popstanub == 1){

        Dialog.close()

      }else{

        this.$router.go(-1);

      }

    },

    back() {

      history.back();

    },

    async logout() {

    this.popstanub = 1;

    Dialog.confirm({

      title: '标题',

      message: '确定退出登录吗?',

    }).then(() => {

    this.popstanub = -1

      this.$store.commit("updateToken", "");

      this.$store.commit("updateLogin", false);

      this.$router.replace("/login")

    }).catch(() => {

    this.popstanub = -1

    })

    window.history.pushState(null,null,'#')

    }

  }

};

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、挂载完成后,判断浏览器是否支持popstate mounted(){ if(window.history &...
    似锦流年_c4a6阅读 585评论 1 0
  • 一、vue-router实现原理 SPA(single page application):单一页面应用程序,只有...
    walycode阅读 1,066评论 1 3
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,511评论 0 17
  • 今天给大家分享的是单色水彩玫瑰的画法。 先画铅笔线稿,颜色尽量浅一点,能看见就行,太深了会使画面看起来生硬。 然后...
    晓茜自留地阅读 1,938评论 0 5
  • 2019.08.24 今天又是没有思路的一天,自己写的文还差很多,有很多的地方需要改进,上午去参加了婚礼,下午继续...
    永恒屿阅读 265评论 0 1