uni-app项目跑APP报useStore报错
前情
uni-app是我比较喜欢的跨平台框架,它能开发小程序/H5/APP(安卓/iOS),重要的是对前端开发友好,自带的IDE让开发体验也挺棒的,现公司项目就是主推uni-app,最近手上项目就是要跑快手/抖音/微信/支付宝/APP多端的项目
坑位
最近负责的项目是使用Vue3+uview-plus+Pinia技术栈的项目,在跑小程序端的时候一切都算顺利,最近同事准备跑APP端的时候发现,控制台报如下错,我自己尝试跑了一下也报同样错
reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack
at useStore (app-service.js:2211:15)
at (app-service. js:7552:20)
at (app-service. js:57237:3)
why?
因为我以前有项目是有遇到这到过这种错误情况,就是使用Pinia的store的时候初始化的时机有问题
为什么小程序端没有问题,而APP端有问题,应该是小程序渲染进程和JS进程是二个独立进程,框架层做了额外的异步处理,掩盖了这个问题,而APP是使用原生 WebView(iOS/WKWebView 或 Android/Chrome),相当于是普通的浏览器渲染,此时就暴露出问题了
解决方案
在使用Pinia的store的时候,注意初始化时机,特别是在js文件中使用,可以把初始化状态放到函数中,不要在js文件顶层做初始化状态
// 错误的示例
import { globalStore } from '@/store/global'
const globalInstance = globalStore()
export function test() {
// 使用globalInstance
}
// 正确的示例
import { globalStore } from '@/store/global'
export function test() {
const globalInstance = globalStore()
// 使用globalInstance
}
在组件中使用,一般像Vue3项目都是使用 setup语法糖的,一般不会有问题,如果你是使用选项式的写组件,那就要避免在组件顶层做状态文件初始化了,可以放到组件生命周期钩子里做初始化
uni-app项目跑APP报useStore报错的更多相关文章
- 用weex create 创建app项目 报 ERROR in index.web.js from UglifyJs 错误!
用weex create创建一个APP项目,安装依赖后运行报 这个是package.json index.web.js 在dist目录下是build时生成的. 上面的答案没有给大家细节,不好意思致歉下 ...
- 解决 React-Native mac 运行报错 error Failed to build iOS project. We ran "xcodebuild" command but it exited with error code 65. To debug build logs further, consider building your app with Xcode.app, by ope
React-Native 开发的项目,Android 方面没有任何问题,IOS 就是无法跑起来,报错信息如下: mac 10.14.4 xcode 10.2.1 error Failed to bui ...
- 移动APP项目研发流程及版本规划(转)
一个移动APP项目研发规模可大可小,但都离不开以下几个成员:产品经理.ui设计师.前端开发.后端开发.测试等.如何合理安排项目成员工作.确保项目顺利进行呢?一个清晰合理的项目研发流程控制很重要. 项目 ...
- ASP.NET CORE MVC 2.0 项目中引用第三方DLL报错的解决办法 - InvalidOperationException: Cannot find compilation library location for package
目前在学习ASP.NET CORE MVC中,今天看到微软在ASP.NET CORE MVC 2.0中又恢复了允许开发人员引用第三方DLL程序集的功能,感到甚是高兴!于是我急忙写了个Demo想试试,我 ...
- 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理
[微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...
- ThinkPhp3.2.3 多项目 后台 APP接口设计 框架设计
↓↓↓项目文件组成部分↓↓↓ APP文件是后台,index.php是入口文件 Interface文件是接口,注意这里不要用api命名!可能会有问题!interface.php是入口文件 注:两个入口文 ...
- vue中引入mintui、vux重构简单的APP项目
最近在学习vue时也了解到一些常用的UI组件,有用于PC的和用于移动端的.用于PC的有:Element(饿了么).iView等:用于移动端APP的有Vux.Mint UI(饿了么).Vant(有赞团队 ...
- (第十一周)约跑APP测试报告
项目名称:约跑App 用户需求规格说明书URL:http://www.cnblogs.com/liquan/p/6071804.html 组长博客URL:http://www.cnblogs.com/ ...
- 约跑APP测试
项目名:约跑APP 用户需求规格说明书URL:http://www.cnblogs.com/liquan/p/6071804.html 组长博客URL:http://www.cnblogs.com/l ...
- 测试——约跑APP
项目名:约跑APP 用户需求规格说明书URL:http://www.cnblogs.com/liquan/p/6071804.html 组长博客URL:http://www.cnblogs.com/l ...
随机推荐
- 联邦学习图像分类实战:基于FATE与PyTorch的隐私保护机器学习系统构建指南
引言 在数据孤岛与隐私保护需求并存的今天,联邦学习(Federated Learning)作为分布式机器学习范式,为医疗影像分析.金融风控.智能交通等领域提供了创新解决方案.本文将基于FATE框架与P ...
- Python 基础练手 32 道
只是记录一把, 这两天, 在建表和定方案的时间极其不充裕下, 看到有铁子求助一下基础的编程题, 32 道题, 90% 都是非常基础的那种, 输入, 输出, 简单判断这些.. 对于新手而言, 练练手还是 ...
- 通过 Nuke 为 Dotnet Core 应用构建自动化流程
为什么使用Nuke 最开始了解Nuke,是浏览github时,刷到了这个项目,看简介可以通过C# 来定义构建任务和流程,这一点很新颖,对我来讲,c# 显然更容易理解和维护. 再看给出的示例,确实比较清 ...
- 单服务器高性能模式:Reactor 与Proactor
极客时间:<从 0 开始学架构>:单服务器高性能模式:Reactor 与Proactor 1.引言 单服务器高性能的 PPC 和 TPC 模式,它们的优点是实现简单,缺点是都无法支撑高并发 ...
- B1014 福尔摩斯的约会 && A1061 Dating
描述 大侦探福尔摩斯接到一张奇怪的字条: 我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm 大侦探很快就明白了, ...
- 虚拟机搭建CDH6详细过程_三节点为例
准备工作 一.安装虚拟机.centos 1.安装VMwareWorkstation虚拟化软件 首先我们使用VMwareWorkstation来快速的进行虚拟机的新建. 本文使用的版本为VMwareWo ...
- 【拥抱鸿蒙】HarmonyOS NEXT实现双路预览并识别文字
我们在许多其他平台看到过OCR功能的应用,那么HarmonyOS在这方面的支持如何呢?我们如何能快速使用这一能力呢?使用这一能力需要注意的点有哪些呢?就让我们一起来探究吧~ [开发环境] 版本规则号: ...
- 【中英】【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第四周测验
[中英][吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第四周测验 上一篇:[课程1 - 第三周编程作业]※※※※※ [回到目录]※※※※※下一篇:[课程1 - 第四周编程作业] 第4 ...
- servlet 的生命周期
1 //servlet 的生命周期 2 @WebServlet(value = "/life",name = "LifeServlet",loadOnStart ...
- B+树、B树
B树的基本结构 B+树的基本结构 其他详细内容