使用Vue刷新当前页面数据「建议收藏」

使用Vue刷新当前页面数据「建议收藏」常常会遇到在删除或者增加一条数据的时候想要刷新页面来显示数据这里提供两种方式方法一:整个页面刷新location.reload()①this.$router.go(0)②相当于强制刷新页面整个页面刷新,会有一瞬间空白方法二:provide/inject组合方式首先需要修改app.vue<template><divid=”app”><router-viewv-if=”isRouterAlive”></rou

大家好,欢迎来到IT知识分享网。

常常会遇到在删除或者增加一条数据的时候想要刷新页面来显示数据这里提供两种方式

方法一: 整个页面刷新

  • location.reload()
  • this.$router.go(0)

相当于强制刷新页面整个页面刷新,会有一瞬间空白

方法二: provide / inject 组合 方式

首先需要修改app.vue

<template>
  <div id="app">
    <router-view v-if="isRouterAlive"></router-view>
  </div>
</template>

<script>


export default {
  name: 'app',
  provide (){
    return {
      reload: this.reload
    }
  },
  data(){
    return {
      isRouterAlive: true
    }
  },
  methods: {
    reload(){
      this.isRouterAlive = false
      this.$nextTick(function (){
        this.isRouterAlive = true
      })
    }
  }
}
</script>

通过声明reload方法,控制router-view的显示或隐藏,从而控制页面的再次加载,这边定义了

isRouterAlive 通过true or false 来控制

然后在需要当前页面刷新的页面中注入App.vue组件提供(provide)的 reload 依赖,然后直接用this.reload来调用就行

image-20210417110912459
image-20210417110901838

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/24370.html

(0)
上一篇 2023-08-24 11:00
下一篇 2023-08-24 14:45

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信