TypeError parentComponent.ctx.deactivate is not a function

在使用Vue3的keep-alive组件时遇到TypeError,问题源于parentComponent.ctx.deactivate不是一个函数。查阅资料并参考大佬文档,解决方案是在keep-alive或组件上设置key属性以确保页面切换的正确排序。
摘要由CSDN通过智能技术生成

vue3在使用keep-alive出现切换页面报错

vue-router.esm-bundler.js?f6c4:3295 
        
       TypeError: parentComponent.ctx.deactivate is not a function
    at unmount (runtime-core.esm-bundler.js?9e79:4686)
    at patch (runtime-core.esm-bundler.js?9e79:3664)
    at Object.sharedContext.activate (runtime-core.esm-bundler.js?9e79:1708)
    at processComponent (runtime-core.esm-bundler.js?9e79:4097)
    at patch (runtime-core.esm-bundler.js?9e79:3695)
    at ReactiveEffect.componentUpdateFn [as fn] (runtime-core.esm-bundler.js?9e79:4310)
    at ReactiveEffect.run (reactivity.esm-bundler.js?0a2b:160)
    at updateComponent (runtime-core.esm-bundler.js?9e79:4171)
    at processComponent (runtime-core.esm-bundler.js?9e79:4104)
    at patch (runtime-core.esm-bundler.js?9e79:3695)

在这里插入图片描述

在网上搜到的bug解释

大佬链接文档

解决办法

在keep-alive、component上设置key进行排序

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值