<template>
  <div class="app">
    <a-spin v-bind="loadingProps">
      <a-config-provider :locale="zh_CN">
        <router-view />
        <!-- <keep-alive>
            <router-view />
          </keep-alive> -->
      </a-config-provider>
    </a-spin>
  </div>
</template>

<script>
import Vue from "vue";
import zh_CN from "ant-design-vue/lib/locale-provider/zh_CN";
export default {
  name: "App",
  data() {
    return {
      zh_CN,
      loadingProps: {
        spinning: false,
      },
    };
  },
  beforeCreate() {
    Vue.prototype.$app = this;
  },
  created() {
    this.readVueXData();
  },
  methods: {
    readVueXData() {
      window.addEventListener("beforeunload", () => {
        sessionStorage.setItem("store", JSON.stringify(this.$store.state));
      });
      if (sessionStorage.getItem("store")) {
        this.$store.replaceState(
          Object.assign(
            {},
            this.$store.state,
            JSON.parse(sessionStorage.getItem("store"))
          )
        );
        sessionStorage.removeItem("store");
      }
    },
  },
};
</script>
<style lang="less" scoped>
.app {
  width: 100% !important;
  min-width: 1440px !important;
  height: 100%;
}
.ant-spin-nested-loading,
/deep/.ant-spin-container {
  width: 100%;
  min-height: 100% !important;
  display: flex;
  // flex-direction: column;
}
</style>