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 分钟前
Harmony 7.0 这个skill帮你自动化操作AGC
前端·javascript·后端
小大宇8 分钟前
Vue知识点-ElementPlus-02图标
前端·javascript·vue.js
简简单单就是我_hehe13 分钟前
一次 ClickHouse 服务器磁盘告警的排查与修复实录
java·服务器·前端
java_nnnn25 分钟前
spring web mvc图书管理小案例
前端·spring·mvc
java1234_小锋30 分钟前
【技术专题】CSS3 网页技术 - CSS3 基础样式
android·前端·css3
畅想视界ThinkView35 分钟前
病区护士站触控终端选型指南:分诊叫号与护理交互终端怎么挑
前端·microsoft·交互
king王一帅36 分钟前
给你的编辑器加上思维导图、流程图、白板:一套开源组件,多种文档通用
前端·vue.js·ai编程
风骏时光牛马38 分钟前
面向复杂场景的大模型智能交互能力迭代与落地实践
前端
是立不是利38 分钟前
CSS 的 Flex 布局——为什么元素没有按我想的排列
前端·css