vue3 ts组合式API异常onMounted is called when there is no active component解决
遇到问题
最近写vue3+ts和组合式API遇到了上面的问题,代码如下:
<template> </template> <script setup lang="ts"> import { useStore } from 'vuex' import { useRoute } from 'vue-router' import { onMounted } from 'vue' const store = useStore() store.dispatch('initMenus') const route = useRoute() onMounted(() =>{ console.log(route.path) }) </script> <style lang="scss" scoped> </style>
这个是因为在这个组合式onMounted之前调用了store.dispatch('initMenus') 内部包含async/await
解决方法
If you are using async setup(), make sure to register lifecycle hooks before the first await statement.
只要把代码顺序调整如下,报错即可消失:
<template> </template> <script setup lang="ts"> import { useStore } from 'vuex' import { useRoute } from 'vue-router' import { onMounted } from 'vue' const route = useRoute() onMounted(() =>{ console.log(route.path) }) const store = useStore() store.dispatch('initMenus') </script> <style lang="scss" scoped> </style>
希望可以帮到你。
以上就是vue3 ts组合式API异常onMounted is called when there is no active component解决的详细内容,更多关于vue3 ts组合式API异常的资料请关注脚本之家其它相关文章!
相关文章
vue中父子组件传值,解决钩子函数mounted只运行一次的操作
这篇文章主要介绍了vue中父子组件传值,解决钩子函数mounted只运行一次的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-07-07详解unplugin vue components不能识别组件自动导入类型pnpm
这篇文章主要为大家介绍了unplugin vue components不能识别组件自动导入类型pnpm详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-01-01
最新评论