关于老大要求F5不重置页面,嫌弃太烦的问题修改

74 阅读1分钟

Emmmmm

我是写在Home文件中的 APP中有一个router-view, 然后Home中也有。 APP中是整个架子的 然后Home中是子模块的 F5时销毁创建新子模块实现刷新数据,不牵连整个架子

<router-view v-slot="{ Component }" v-if="singlePageRefresh">
     <keep-alive>
          <component :is="Component" :key="$route.name" v-if="$route.meta.keepAlive" />
     </keep-alive>
     <component :is="Component" :key="$route.name" v-if="!$route.meta.keepAlive" />
</router-view>
const singlePageRefresh = ref(true);
const reFreshPage = () => {
  singlePageRefresh.value = false;
  setTimeout(() => {
    singlePageRefresh.value = true;
  }, 500);
};
document.onkeydown = function (e) {
  let evt = window.event || e;
  let key = evt.keyCode;
  if (key == 116) {
    reFreshPage();
    if (evt.preventDefault) {
      evt.preventDefault();
    } else {
      evt.keyCode = 0;
      return false;
    }
  }
};