vue 当前页面刷新 provide + inject

1. 在App.vue 文件里写入provide 方法

html 复制代码
<script setup></script>

<template>
  <a-config-provider :locale="localezhCN" :autoInsertSpaceInButton="false">
    <el-config-provider :locale="locale">
      <router-view v-wechat-title="$route.meta.title" v-if="isRouterAlive" />
    </el-config-provider>
  </a-config-provider>
</template>

<script>
import zhCn from "element-plus/es/locale/lang/zh-cn";
import zhCN from "ant-design-vue/es/locale/zh_CN";
export default {
  //局部组件
  components: {},
  //lu
  data() {
    return {
      isRouterAlive: true,
    };
  },
  setup() {
    //设置中文
    return {
      locale: zhCn,
      localezhCN: zhCN,
    };
  },
  //lu
  provide() {
    return {
      reload: this.reload,
    };
  },
  //lu
  methods: {
    async reload() {
      this.isRouterAlive = false;
      await this.$nextTick();
      this.isRouterAlive = true;
    },
  },
};
</script>
<style>
@import url("./assets/css/base.css");
</style>

2. 在需要刷新的页码使用inject引入

html 复制代码
<script>

export default {
 inject:['reload'],  //注入依赖
  mounted() {
    if (location.href.indexOf("#Case") == -1) {
        location.href = location.href + "#Case";
        this.reload();
    }
   }
}
</script>
相关推荐
重阳微噪26 分钟前
受够了空格翻页?我写了一个 Chrome 自动滚动插件,让你真正沉浸式阅读
前端
Ruihong32 分钟前
你的 Vue 3 reactive(),VuReact 会编译成什么样的 React?
vue.js·面试
Awu122734 分钟前
🍎用 pretext 搞定输入框动态宽度:一个困扰了我三天的 CSS 问题
前端
Ruihong34 分钟前
你的 Vue 3 ref(),VuReact 会编译成什么样的 React?
vue.js·面试
一 乐35 分钟前
酒店预订|基于springboot + vue酒店预订系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·酒店预订系统
萑澈35 分钟前
我用 Cloudflare 搭了一个 FlashInbox 临时邮箱
前端·next.js
慕斯fuafua40 分钟前
CSS——盒模型
前端·css
嗜好ya40 分钟前
解决 Vite 项目中 import.meta.env 变量为 undefined 的问题
前端·javascript·vue.js
Mapmost41 分钟前
Mapmost专题地图:解锁这场春游“热”
前端
心连欣42 分钟前
JS算法入门:图解“冒泡排序”,彻底搞懂双重循环的奥义
前端·javascript