uni-app 在 vue3 下 nvueLaunchMode为normal 时也不能访问vuex
uni-app 在 vue3 下 nvueLaunchMode为normal 时也不能访问vuex
产品分类:
uniapp/App
PC开发环境操作系统:
Windows
PC开发环境操作系统版本号:
10
HBuilderX类型:
正式
HBuilderX版本号:
3.2.16
手机系统:
Android
手机系统版本号:
Android 11
手机厂商:
小米
手机机型:
小米10至尊 miui12.5.21.11.3开发版
页面类型:
vue
vue版本:
vue3
打包方式:
云端
项目创建方式:
HBuilderX
示例代码:
"nvueLaunchMode" : "normal"
操作步骤:
manifest.json这是vue版本为2,真机运行正常。设置vue版本为3,编辑器报错,真机无法运行
预期结果:
正常读取vuex内容,方便封装
实际结果:
异常,应用无法使用
bug描述:
vue3模式在首屏访问vuex数据的时候,编辑器报错
reportJSException >>>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->Uncaught TypeError: (0 , vue__WEBPACK_IMPORTED_MODULE_0__.reactive) is not a function
真机无法运行,在第二个tabbar访问没有。根据文档Nvue 首页快速启动模式来看
V3 + fast,vuex不可用。
因此将manifest.json中配置
"nvueLaunchMode" : "normal"
编辑器依旧报错,不能运行,此参数是否已经失效。代码见附件
更多关于uni-app 在 vue3 下 nvueLaunchMode为normal 时也不能访问vuex的实战教程也可以访问 https://www.itying.com/category-93-b0.html
我也遇到相同的问题
更多关于uni-app 在 vue3 下 nvueLaunchMode为normal 时也不能访问vuex的实战教程也可以访问 https://www.itying.com/category-93-b0.html
大佬你解决了吗
在 Vue3 下,nvueLaunchMode 设置为 normal 时仍无法访问 Vuex 的问题,通常与 Vue3 的响应式系统变更有关。Vue3 使用 reactive 和 ref 替代 Vue2 的 Vue.observable,而 reactive 未定义错误表明 Vue3 的响应式模块可能未正确加载或初始化。
检查项目配置:
- 确保
manifest.json中已正确配置 Vue 版本为 3,且依赖包(如vuex@4.x兼容 Vue3)已安装。 - 在
main.js或入口文件中,Vuex 需通过createStore创建,并使用app.use(store)挂载。
若问题持续,尝试清理项目并重新安装依赖(删除 node_modules 和 package-lock.json,重新运行 npm install)。云端打包时,确保本地与云端环境一致。
此外,检查 nvue 页面中是否误用了 Vue2 语法(如 this.$store),在 Vue3 组合式 API 中,应使用 useStore 获取 store 实例。例如:
import { useStore } from 'vuex';
const store = useStore();

