vue修改数据,刷新当前页⾯,重新渲染页⾯数据
业务场景:在管理后台,在执⾏完,增,删,改,操作的时候。我们需要刷新⼀下页⾯,重载数据。在JQ中我们会⽤到load()⽅法,刷新页⾯;在vue中,这⾥需要⽤到⼀个 provide / inject 这对⽤例。(其他⽅法:this.$(0),会强制刷新,出现空⽩页⾯体验不好);
原理是:通过控制router-view 的显⽰与隐藏,来重渲染路由区域,重⽽达到页⾯刷新的效果。
代码如下:
1:在⽗组件中加⼊
<template>
<div id="app">
<router-view v-if="isRouterAlive"></router-view>
</div>
</template>
<script>
export default {
name: 'App',
provide (){
return {
load
}
},
data(){react router怎么渲染页面的
return {
isRouterAlive:true
}
},
methods:{
reload (){
this.isRouterAlive = false
this.$nextTick(function(){
this.isRouterAlive = true
})
}
},
components:{
}
}
</script>
2:然后在⼦组件export default中引⼊
inject:['reload']
3:最后在执⾏完相应的操作,后调⽤reload⽅法就可以了!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论