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>
相关推荐
小菜今天没吃饱1 分钟前
DVWA-XSS(Reflected)
前端·xss·dvwa
孟祥_成都5 分钟前
前端下午茶!看看炫酷的动画,轻松一下!
前端·动效
lxh011311 分钟前
合并K个升序链表题解
前端·数据结构·链表
小周码代码18 分钟前
js 数字金额转为大写 js 金额转大写
开发语言·前端·javascript·js工具
航Hang*21 分钟前
WEBSTORM前端——第1章:HTML——第2节:列表,表格,下拉菜单,文本框与按钮
前端·html·css3·webstorm
云计算DevOps-韩老师22 分钟前
HTML盒子模型详解
前端·html
不一样的少年_23 分钟前
不仅免费,还开源?这个 AI Mock 神器我必须曝光它
前端·javascript·浏览器
2501_9310480824 分钟前
HTML `<select>` 标签深度解析
前端·html
WZl25 分钟前
在传统的HTML、CSS与JavaScript项目中加入vue
javascript·css·vue.js·html
xcLeigh27 分钟前
AI 绘制图表专栏:用豆包轻松实现 HTML 柱状图、折线图与饼图
前端·人工智能·html·折线图·柱状图·图表·豆包