import vuex,{useStore,mapMutations} from "vuex"
setup() {
const store = useStore()
console.log("自定义打印:",store,store.state);
console.log("setup");
console.log(useStore);
const test = ref("setup周期测试")
console.log(vuex);
console.log(test);
return {test}
}
- 发布:2024-10-22 19:07
- 更新:2024-10-23 02:02
- 阅读:88
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows 10 家庭中文版
HBuilderX类型: 正式
HBuilderX版本号: 4.29
手机系统: Android
手机系统版本号: Android 13
手机厂商: 华为
手机机型: 荣耀90 gt
页面类型: nvue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
下载hello-uniapp项目,打开pages/tabBar/componentcomponent.nvue文件
导入import vuex,{useStore,mapMutations} from "vuex"
在setup生命周期里
setup() {
const store = useStore()
console.log("自定义打印:",store,store.state);
console.log("setup");
console.log(useStore);
const test = ref("setup周期测试")
console.log(vuex);
console.log(test);
return {test}
}
下载hello-uniapp项目,打开pages/tabBar/componentcomponent.nvue文件
导入import vuex,{useStore,mapMutations} from "vuex"
在setup生命周期里
setup() {
const store = useStore()
console.log("自定义打印:",store,store.state);
console.log("setup");
console.log(useStore);
const test = ref("setup周期测试")
console.log(vuex);
console.log(test);
return {test}
}
预期结果:
正常使用vuex里的数据
正常使用vuex里的数据
实际结果:
报错
(0 , import_vuex.useStore) is not a function
TypeError: (0 , import_vuex.useStore) is not a function
at Proxy.onLoad (pages/tabBar/component/component.js.nvue:260:121)
at pages/tabBar/component/component.js.nvue:430:9
at pages/tabBar/component/component.js.nvue:432:3
报错
(0 , import_vuex.useStore) is not a function
TypeError: (0 , import_vuex.useStore) is not a function
at Proxy.onLoad (pages/tabBar/component/component.js.nvue:260:121)
at pages/tabBar/component/component.js.nvue:430:9
at pages/tabBar/component/component.js.nvue:432:3
bug描述:
在setup周期里使用useStore报错:
(0 , import_vuex.useStore) is not a function
TypeError: (0 , import_vuex.useStore) is not a function
at Proxy.onLoad (pages/tabBar/component/component.js.nvue:260:121)
at pages/tabBar/component/component.js.nvue:430:9
at pages/tabBar/component/component.js.nvue:432:3
2***@qq.com (作者)
// 页面路径:main.js
import App from './App'
import store from './store'
import {createSSRApp} from 'vue'
import Vuex from "vuex";
export function createApp() {
const app = createSSRApp(App)
app.use(store)
return {
app,
// Vuex // 注意,如果 nvue 使用 vuex 的各种map工具方法时,必须 return Vuex
}
}
2***@qq.com (作者)
这是在hello-uniapp测试useStore时踩了一个坑,nvue页面使用vuex记得在返回Vuex,不然vuex库导出的所有函数都会是undefined
2024-10-23 01:35