vue.js刷新组件的方法:首先给【router-view】标签添加key属性将key绑定的值放在状态管理容器里面;然后通过状态管理容器的mutations或者actions触发key值的变化即可。
本教程操作环境:windows10系统、vue2.9,本文适用于所有品牌的电脑。
【相关文章推荐:vue.js】
vue.js刷新组件的方法:
开发过程遇到了一个问题,就是我的 router-view 里面渲染出来的组件输入数据之后,我点击 路由视图外边的导航栏 router-link 按钮,可以实现清除 router-view 里面的数据,也就是使组件重新渲染。
立即学习“前端免费学习笔记(深入)”;
vm.$forceUpdate()这个方法可以使当前组件调用这个方法时,重新渲染组件。给 router-view 标签添加 key 属性将 key 绑定的值放在状态管理容器里面,通过 状态管理容器的 mutations 或者 actions 触发 key 值的变化,即可实现重新渲染组件的目的。相关实现代码如下
// store/view.jsconst 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 组件
触发 viewid,使 router-view 对应的路由组件刷新的地方,比如导航栏组件。
methods: { fresh() { this.$store.dispatch("view/setViewId") }}
登录后复制
相关免费学习推荐:javascript(视频)
以上就是vue.js怎样刷新组件的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3022702.html