最开始的入口文件main.js:

import { createApp } from 'vue'
import App from './5-vant轻量级组件/02indexBar索引栏/App'
import router from './5-vant轻量级组件/02indexBar索引栏/router/index'
import 'vant/lib/index.css';        //vant 标签样式
import  './5-vant轻量级组件/02indexBar索引栏/util/axios-conf.js'    // 导入axios配置文件   加载数据时动画效果
// import pinia from './5-vant轻量级组件/02indexBar索引栏/store/index'

import { createPinia } from 'pinia'
const pinia = createPinia()
const app=createApp(App)
app.use(router)      //注册路由插件
app.use(pinia)      //注册pinia状态管理插件
app.mount('#app')  //将App组件挂载到.app节点上

在main.js文件中创建并注册pinia。

当我需要另一个模块数据,于是进行了模块导入,出现了报错

 原因是是pinia在main.js中还未注册好,便在其他文件中使用了它。

两种方法解决:

1.在pinia在main.js注册前,就在模块中创建好pinia文件

2.在pinia在main.js注册后,在需要时调用模块

法一:

于是我单独写了一个pinia文件

 在main.js中引入使用

 

 既然pinia在main.js中还未注册好,在模块中就是用了,那么我在模块中引入pinia文件,就可以了

 问题就解决了!

法二:

在需要时调用方法

区别:

第一种方法: 可以在模块内全局使用

第二种方法: 只能在模块内局部使用

 

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐