您好,欢迎来到九壹网。
搜索
您的当前位置:首页Vue实现手动刷新组件的方法

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

来源:九壹网
Vue实现⼿动刷新组件的⽅法

开发过程遇到了⼀个问题,就是我的 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\ }};

export default { namespaced: true, state, getters, mutations, actions};

放置 router-view 标签的Layout 组件

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

methods: { fresh() {

this.$store.dispatch(\"view/setViewId\") }}

以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 91gzw.com 版权所有 湘ICP备2023023988号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务