您当前的位置: 首页 > 

杨林伟

暂无认证

  • 3浏览

    0关注

    3337博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Vue项目实战(06)- 钩子方法触发失败的解决

杨林伟 发布时间:2021-07-13 11:25:49 ,浏览量:3

文章目录
  • 1. 引言
  • 2. 引出问题
  • 3. 解决方案

1. 引言

在前面的章节,已经讲解了部分vue-element-admin的知识:

  • 《Vue项目实战(01)-vue-element-admin项目结构分析》
  • 《Vue项目实战(02)-Vuex状态管理模式》
  • 《Vue项目实战(03)-alias》
  • 《Vue项目实战(04)-axios封装》
  • 《Vue项目实战(05)-多环境配置》

本文要讲解的是钩子触发失败的问题。

2. 引出问题

有时候我们使用router-view的时候,因为是同一个组件conpoment,会导致钩子函数无法触发。

举例: 在这里插入图片描述 看代码,可以知道创建和编辑的页面使用的是同一个component,默认情况下当这两个页面切换时并不会触发vuecreated或者mounted钩子。

官方的解决方案是可以通过watch $route的变化来做处理,但其实这并不是最优的方案。

下面来讲下解决方案。

3. 解决方案

解决方案:在 router-view上加上一个唯一的key,来保证路由切换时都会重新渲染触发钩子了。

代码如下:



computed: {
    key() {
        return this.$route.name !== undefined? this.$route.name + +new Date(): this.$route + +new Date()
    }
 }

本文完!

关注
打赏
1662376985
查看更多评论
立即登录/注册

微信扫码登录

0.1149s