Vue 项目功能实现:刷新当前页面
栏目: JavaScript · 发布时间: 6年前
内容简介:前些日子项目中突然接到了一个需求,要求点击当前路由刷新页面,进过实验有如下几种方案可实现需求,并简述不同。此方式是利用了 history 中前进和后退的功能,传入 0 刷新当前页面。缺点:页面整个刷新,会白屏。
前言
前些日子项目中突然接到了一个需求,要求点击当前路由刷新页面,进过实验有如下几种方案可实现需求,并简述不同。
1. this.$router.go(0)
此方式是利用了 history 中前进和后退的功能,传入 0 刷新当前页面。
缺点:页面整个刷新,会白屏。
2. location.reload()
直接使用刷新当前页面的方法。
缺点:同 this.$router.go(0)
一样,会白屏。
3. 给 router-view 标签添加 v-if
通过 $nextTick()
,协助实现。先把 <router-view />
隐藏,隐藏后再让它显示,达到刷新当前页面的功能。是目前最合适的实现方式。
<!-- html -->
<router-link :to="url" @click.native="refreshView">页面</router-link>
<router-view v-if="showView"/>
<!-- js -->
<script>
export default {
data () {
return {
showView: true // 用于点击当前页的router时,刷新当前页
}
},
methods: {
refreshView (url) {
this.showView = false // 通过v-if移除router-view节点
this.$nextTick(() => {
this.showView = true // DOM更新后再通过v-if添加router-view节点
})
}
}
}
</script>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- vuex页面刷新数据丢失的解决办法
- javascript – AJAX:提交表单而不刷新页面
- 你知道 JavaScript 有 535 种方法刷新页面吗?
- Vue踩坑之旅(二)—— 监听页面刷新和关闭
- Vue单页SPA后台管理点击刷新当前页面
- java – Zip下载后的重定向或刷新页面
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Web Application Hacker's Handbook
Dafydd Stuttard、Marcus Pinto / Wiley / 2011-9-27 / USD 50.00
The highly successful security book returns with a new edition, completely updated Web applications are the front door to most organizations, exposing them to attacks that may disclose personal infor......一起来看看 《The Web Application Hacker's Handbook》 这本书的介绍吧!
Markdown 在线编辑器
Markdown 在线编辑器
正则表达式在线测试
正则表达式在线测试