<template>
  <div id="app">
    <router-view/>
  </div>

</template>

<script>
import {removeToken} from "@/utils/auth";

export default {
  name: 'App',
  mounted() {
    // 禁用鼠标右键
    document.getElementById("app").oncontextmenu = function (e) {
      return false;
    };

    window.addEventListener("beforeunload", e => {
      this.beforeunloadHandler(e)
      let userAgent = navigator.userAgent
      let isOpera = userAgent.indexOf("Opera") > -1;
      if (isOpera) { //判断是否Opera浏览器
        return "Opera"
      }
      if (userAgent.indexOf("Firefox") > -1) {
        this.unloadHandler();
      }
      if (userAgent.indexOf("MSIE") > -1) {
        this.unloadHandler();
      }
    });
    window.addEventListener("unload", async e => {
      this.unloadHandler(e)
    });
  },
  methods: {
    beforeunloadHandler(e) {
      this._beforeUnload_time = new Date().getTime();
    },
    unloadHandler(e) {
      this._gap_time = new Date().getTime() - this._beforeUnload_time;
      //判断是窗口关闭还是刷新
      localStorage.setItem('time', this._gap_time)
      if (this._gap_time <= 5) {
        // // 发送设置同步 (退出登陆的api)
        // this.$store.dispatch('LogOut').then(() => {
        //   location.href = '/index';
        // })


        this.$axios.post(
          '/logout', {}
        ).then((res) => {
          this.$message.success(res.data)
          removeToken()
          //注销返回自己的登录页
          this.$router.push(`/login?redirect=${this.$route.fullPath}`)
        })
      } else {
      }
    },
  },
  destroyed() {
    window.removeEventListener("beforeunload", e =>
      this.beforeunloadHandler(e)
    );
    window.removeEventListener("unload", e => this.unloadHandler(e));
  }
}
</script>
