场景:使用的是vue,项目是后台管理系统,进页面后点击其他路由,会卡顿一会才跳转,控制台没有报错,网络在卡顿的时候也没有发请求


问题定位:当前页面有个下拉框,数据是后台请求回来的,有6000+条,当路由切换的时候,会触发销毁的生命周期钩子,数据多,系统销毁需要一定的时间


问题解决:给当前页面用keep-alive缓存,这样就不会触发销毁的生命周期

<keep-alive include="home">
    <router-view/>
</keep-alive>

注意:keep-alive使用时要给组件加name

<script>
export default {
    name: 'home',
    data() {
        return{}
    }
}
</script>

应该还有其他解决方法,欢迎在评论区讨论

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐