您当前的位置:首页 > 网站建设 > javascript
| php | asp | css | H5 | javascript | Mysql | Dreamweaver | Delphi | 网站维护 | 帝国cms | React | 考试系统 | ajax | jQuery | 小程序 |

应用provide与inject刷新Vue页面方法

51自学网 2022-02-21 13:41:09
  javascript

方法1:直接调用函数

将整个页面重载, 以下两种都可以

1.window.location.reload()

2.this.$router.go()

方法2:采用provide / inject(静刷新)

在高阶函数中声明一个reload刷新函数

<template>  <div id="app" v-if="show"></div></template><script>export default {  // 控制显示/隐藏, 实现刷新  data () {    return {      show: true    }  },  // 把刷新的方法传给低阶组件  provide () {    return {      reload: this.reload    }  },  methods: {    // 高阶组件定义刷新方法    reload () {      this.bol = false      this.$nextTick(() => {        this.bol = true      })    }  }}</script>

在低阶组件中使用刷新函数

<template>  <div></div></template><script>export default {  inject: ['reload'],  methods: {    // 低阶组件, 刷新    fun () {      this.reload()    }  }}</script>

优势比较

  • 方法1中直接调用函数, 会导致整个网站刷新,会浪费性能些,用户体验也不好; 大型网站这样刷新下,需要等几秒浏览器左上角可以看到刷新的动画;
  • 方法2中采用provide / inject, 用户不会感觉到刷新, 而且刷新的页面内容范围可控制, 相对浪费性能会少很多

以上就是应用provide与inject刷新Vue页面方法的详细内容,更多关于Vue页面刷新的资料请关注51zixue.net其它相关文章!


下载地址:
微信小程序实现左右联动
Vue实现登录以及登出详解
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。