检查版本

确定当前的vue版本的是2.1+

因为includeexcludevue2.1.0新增的两个属性.

package.json

"vue": "^2.5.2",

检查name

注意,不是router.js中的name,而是单个vue组件中的name属性.

建议将router.js中的namevue组件的name保持一致,不要混乱.



1.  export default {
    
2.      name: "index"
    
3.  }
    

多层嵌套

网上的答案几乎都是检查vue组件的name属性,但还是有一个巨坑.

那就是多级嵌套<router-view></router-view>,但凡有超过两个以上的router-view且是父子级关系,请都加上keep-alive,只加一个不会生效.



  // app.vue
    
  <keep-alive include="app,index"> 
     <router-view></router-view>
  </keep-alive>
    
     
  // other.vue 
  
 <keep-alive include="app,index">  
     <router-view></router-view>
 </keep-alive>
    

亲爱的阿乾
885 声望22 粉丝

此时无能为力,此心随波逐流