vue项目刷新当前页面的三种方式(重载当前页面数据,个人推荐第三种)

一、this.$router.go(0)

相当于F5刷新,这种方法虽然代码很少,只有一行,但是体验很差。页面会一瞬间的白屏,体验不是很好

二、location.reload()

这种也是一样,画面一闪,体验不是很好,相当于页面刷新

三、用provide / inject 组合

原理:允许一个祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在起上下游关系成立的时间里始终生效
在App.vue,声明reload方法,控制router-view的显示或隐藏,从而控制页面的再次加载。

<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>

在需要刷新的页面引入后直接调用即可

<template>
  <div>
    <el-button icon="el-icon-refresh" @click="refresh">点击刷新</el-button>
  </div>
</template>
<script>
export default {
//引用vue reload方法
  inject: ['reload'],
  name:"",
  data() {
    return {
    }
  },
methods: {
    refresh () {
      this.reload()
    }
  }
}
</script>

这样就可以啦

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Python是一种流行的编程语言,用于开发各种类型的应用程序,包括Web应用程序。要刷新当前页面,可以使用Python中的一些库和框架来实现。 首先,你可以使用Django这样的Web框架。Django是一个强大的框架,它提供了许多功能,包括处理请求和响应。要刷新当前页面,你可以在视图函数中返回一个HTTP响应对象,其中包含刷新当前页面的标头。例如,你可以使用HttpResponseRedirect类返回一个重定向响应,将用户重定向到同一页面。这将导致页面刷新。 另一个方法是使用Flask这样的小型Web框架。Flask是一个灵活的框架,允许你使用自定义的路由函数处理请求。在路由函数中,你可以返回一个特殊的响应对象,例如一个刷新当前页面重定向响应。你可以使用Flask提供的redirect函数来实现这个目的。 除了使用Web框架,你还可以使用JavaScript刷新当前页面。Python可以与JavaScript进行交互,通过向网页中插入JavaScript代码来实现刷新页面的功能。你可以使用Python的webbrowser库来打开一个新的浏览器窗口,并使用JavaScript代码来刷新当前页面。例如,你可以使用webbrowser库的open函数来打开一个新的浏览器窗口,并使用JavaScript代码location.reload()来刷新页面。 总之,要刷新当前页面,你可以使用Python的Web框架,如Django或Flask,通过返回特定类型的响应对象来实现。你还可以使用Python与JavaScript进行交互,通过向网页中插入JavaScript代码来刷新页面。这些方法可以适用于各种Web应用程序开发场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值