VueRouter 刷新子路由方案

demongao
1448
2022-09-15

需求

某些全局变量被页面接口使用,修改这些全局变量时,涉及到这些变量的接口也需要重新调用。

方案

  1. watch监听:增加代码可读性【×】
  2. window.location.reload() 重新加载页面,资源需重新加载,刷新速度慢【×】
  3. 使用v-if特性,达到刷新路由的效果
<template>
	<router-view v-if="updateViewStatus"/>
</template>

<script lang="ts" setup>
// ...
const updateView = () => {
      updateViewStatus.value = false;
      nextTick(() => {
        updateViewStatus.value = true;
      })
    }
// ...
</script>