vue3 在setup 外部调用 useStore() 为 undefined 解决

效果

如下例子 useStore()= undefined 但是 useStore( )是为了获取 store 可以直接引入store代替useStore

import {
    
     useStore } from 'vuex'
import _store from '@/store'
  // 拿到store独享
  const store = useStore() || _store
  console.log('store 1', useStore)
  console.log('store 2', useStore())
  console.log('store 3', _store)

在这里插入图片描述
在这里插入图片描述

useStore

useStore()主要是为了获取 store

store 从何处来

store 主要是通过 main.ts 中引入
然后使用

import store from './store'
....
....
app.use(store)

语句引入 至此 setup内部就可以使用 useStore()获取到store;

外部使用useStore()

外部使用则 直接不使用 useStore()
因为使用 useStore() 的主要目的是引入 store;
那么外部可以直接 如main.ts 一样引入store;

猜你喜欢

转载自blog.csdn.net/weixin_43245095/article/details/124424018