尘雨雾录
尘雨雾录
  • 发布:2022-11-26 20:08
  • 更新:2023-09-21 13:50
  • 阅读:794

【报Bug】uniapp vue3下创建request.js公共库,使用pinia报错

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: windows11

HBuilderX类型: 正式

HBuilderX版本号: 3.6.5

手机系统: Android

手机系统版本号: Android 12

手机厂商: 华为

手机机型: mate30

页面类型: vue

vue版本: vue3

打包方式: 离线

项目创建方式: HBuilderX

操作步骤:

描述

预期结果:

描述

实际结果:

描述

bug描述:

我创建了一个公共request管理的js库,然后这个js库里的url我是放在了pinia里面,于是在这个request.js里开头我写了一句
import { useCounterStore } from '@/store/counter'
const counter = useCounterStore()

然后request的config里,host我直接从counter里面拿。

在h5和小程序都没问题,在app就会报错
reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->
at useStore (app-service.js:3134:15)
at (app-service.js:3694:19)
at (app-service.js:7721:3)

我排查了后,发现在setup之外调用的话,pinia没完成初始化,于是报错。
可这不应该啊,pinia的使用逻辑不就是轻量引入么,我自己创了一个request.js库,就不能用pinia了?
目前排查下来在<script setup>下使用的话,不能用
import {Request} from '@/components/chenyu/request'
方式引入,得用
let {Request} = require('@/components/chenyu/request')引入才能正常

2022-11-26 20:08 负责人:无 分享
已邀请:
5***@qq.com

5***@qq.com

vue3 vite cli版本 在微信小程序中 也遇到同样的问题 有什么好的解决方案么?

Sun_Rise

Sun_Rise

遇到同样问题了。。。

要回复问题请先登录注册

  • 标题 / 粗斜体
  • 代码片段
  • 超链接 / 图片 / 视频
  • 列表 / 引用

文章内容较多时,可以用标题分段 :

## 大标题 
### 小标题

斜体 / 粗体 :

**粗体** 
*斜体*
***粗斜体***

代码片段 :

``` javascript
代码片段
```

超链接 :

[链接文字](链接地址) 例: [百度](http://www.baidu.com)

图片 :

![图片说明](图片地址) 例: ![百度logo](http://www.baidu.com/img/bdlogo.gif)

视频 :

!![视频说明](视频地址) 例: !![优酷视频](http://youku.com)

有序列表 :

1. 123
2. 123
3. 123

无序列表 :

- 123
- 123
- 123

引用 : ( 双回车后结束引用 )

> 引用内容
引用内容
引用内容