Vue 实现手动刷新组件的方法


Posted in Javascript onFebruary 19, 2019

开发过程遇到了一个问题,就是我的 router-view 里面渲染出来的组件输入数据之后,我点击 路由视图外边的导航栏 router-link 按钮,可以实现清除 router-view 里面的数据,也就是使组件重新渲染。vm.$forceUpdate()这个方法可以使当前组件调用这个方法时,重新渲染组件。给 router-view 标签添加 key 属性将 key 绑定的值放在状态管理容器里面,通过 状态管理容器的 mutations 或者 actions 触发 key 值的变化,即可实现重新渲染组件的目的。相关实现代码如下

// store/view.js
const state = {
 viewId: 1
};
const getters = {
 getViewId: state => {
  return state.viewId;
 }
};
const mutations = {
 setViewId: (state, payload) => {
  state.viewId++;
 }
};
const actions = {
 setViewId: (context, payload) => {
  context.commit("setViewId", payload);
 }
};
export default {
 namespaced: true,
 state,
 getters,
 mutations,
 actions
};

放置 router-view 标签的Layout 组件

Vue 实现手动刷新组件的方法

触发 viewid,使 router-view 对应的路由组件刷新的地方,比如导航栏组件。

methods: {
  fresh() {
    this.$store.dispatch("view/setViewId")
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
popdiv
Jul 14 Javascript
JQuery从头学起第二讲
Jul 04 Javascript
js实现简单登录功能的实例代码
Nov 09 Javascript
js Calender控件使用详解
Jan 05 Javascript
Node.js的包详细介绍
Jan 14 Javascript
微信小程序开发之从相册获取图片 使用相机拍照 本地图片上传
Apr 18 Javascript
详解Vue.js组件可复用性的混合(mixin)方式和自定义指令
Sep 06 Javascript
微信小程序简单实现form表单获取输入数据功能示例
Nov 30 Javascript
Angular4 组件通讯方法大全(推荐)
Jul 12 Javascript
vue-cli 使用vue-bus来全局控制的实例讲解
Sep 15 Javascript
JavaScript用document.write()输出换行的示例代码
Nov 26 Javascript
Vue实现简单计算器
Jan 20 Vue.js
jQuery选择器之层次选择器用法实例分析
Feb 19 #jQuery
jQuery选择器之基本选择器用法实例分析
Feb 19 #jQuery
jQuery实现为table表格动态添加或删除tr功能示例
Feb 19 #jQuery
详解vue几种主动刷新的方法总结
Feb 19 #Javascript
jQuery事件多次绑定与解绑问题实例分析
Feb 19 #jQuery
Vue动态路由缓存不相互影响的解决办法
Feb 19 #Javascript
JS实现的全选、全不选及反选功能【案例】
Feb 19 #Javascript
You might like
discuz安全提问算法
2007/06/06 PHP
IStream与TStream之间的相互转换
2008/08/01 PHP
php 编写安全的代码时容易犯的错误小结
2010/05/20 PHP
php include加载文件两种方式效率比较
2010/08/08 PHP
发款php蜘蛛统计插件只要有mysql就可用
2010/10/12 PHP
thinkPHP使用pclzip打包备份mysql数据库的方法
2016/04/30 PHP
php微信公众号开发之欢迎老朋友
2018/10/20 PHP
关于Yii中模型场景的一些简单介绍
2019/09/22 PHP
jquery 学习之二 属性(html()与html(val))
2010/11/25 Javascript
js 取时间差去掉周六周日实现代码
2012/12/25 Javascript
实现局部遮罩与关闭原理及代码
2013/02/04 Javascript
使用JavaScript实现Java的List功能(实例讲解)
2013/11/07 Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
2014/12/18 Javascript
kindeditor编辑器点中图片滚动条往上顶的bug
2015/07/05 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之绑定事件
2015/11/19 Javascript
Angularjs 制作购物车功能实例代码
2016/09/14 Javascript
DOM事件探秘篇
2017/02/15 Javascript
vue-cli2.9.3 详细教程
2018/04/23 Javascript
VSCode写vue项目一键生成.vue模版,修改定义其他模板的方法
2020/04/17 Javascript
完美解决vue 中多个echarts图表自适应的问题
2020/07/19 Javascript
微信小程序实现简单购物车功能
2020/12/30 Javascript
[01:30]DOTA2上海特锦赛现场采访 Loda倾情献唱
2016/03/25 DOTA
python获取beautifulphoto随机某图片代码实例
2013/12/18 Python
Python3实现生成随机密码的方法
2014/08/23 Python
Python中表达式x += y和x = x+y 的区别详解
2017/06/20 Python
详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
2017/06/23 Python
简单谈谈Python中的json与pickle
2017/07/19 Python
解决使用PyCharm时无法启动控制台的问题
2019/01/19 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
CSS3中的元素过渡属性transition示例详解
2016/11/30 HTML / CSS
俄罗斯最大的灯具网站:Fandeco
2020/03/14 全球购物
垃圾回收的优点和原理。并考虑2种回收机制
2016/10/16 面试题
教师聘用意向书
2015/05/11 职场文书
王亚平太空授课观后感
2015/06/12 职场文书
小学校园广播稿
2015/08/18 职场文书
Win11 Build 25179预览版发布(附更新内容+ISO官方镜像下载)
2022/08/14 数码科技