|
一、当我在调用store时报错: Cannot read property 'state' of undefined
具体代码如下图
解决过程:
各种尝试有点无计可施,感谢网友哪种分享,给了我解决的思路,所以我把我的解决过程及最终方案也分享给大家,希望能帮忙到别人。
1、新建简单test页。先test页直接引用store.js
先是报错,发现原来 vue3 不可以直接以 import Vue from 'vue' 引用。
在store.js中去掉 import Vue from 'vue' 、Vue.use(Vuex) ,修改如下,成功调用。
import store from '@/store/store.js'
methods: {
increment () {
store.commit('increment')
console.log(store.state.count)
}
}
2、在mian.js 挂载,通过this.$store.state.count 调用。
一直会报 Cannot read property 'state' of undefined
先是在mian.js中增加打印:console.log('main.js来了。不是vue3环境 - 执行代码块') 、console.log('是vue3环境 - 执行代码块')
打印结果说明我是vue3版本。之前我一直在// #ifndef VUE3 块中尝试说明地方就搞错了。
一直报错,说明就是挂载不成功。最后了如下修改解决。
app.use(store) 挂载。要注意挂载的地方。如果有帮助到你,多多支持,能帮助到更多的人。
// #ifdef VUE3
console.log('是vue3环境 - 执行代码块')
import {createSSRApp} from 'vue'
import App from './App.vue'
import store from '@/store/store.js'
console.log('mian中:'+store.state.count)
export function createApp() {
const app = createSSRApp(App)
app.use(store)
return {
app,
store
}
}
// #endif
二、module namespace not found in mapState()
// 从 vuex 中按需导出 mapState 辅助方法
import {mapState} from 'vuex'
export default {
computed:{
...mapState('m_cart',['cart'])
},
如上图代码报错,原因:找到 cart 对应的js文件,在当中开启命令空间
//为当前模块开启命令空间
namespaced:true,
三、发行到微信小程序,发现有些模块不显示
余是在不显示的页面中的methods 方法里开始注释排除查找原因。要注释methods是因为看到网上有人是computed中写法有问题,也遇到这情况,因为我这个页面没有computed,所以就注释了methods方法。
奇怪的是,原因在微信开发者工具里页面也不显示的。我把加载数据的那个方法注释了,就开始有显示,然后再去掉注释就显示了。
四、报错 chooseAddress:fail the api need to be declared in\
- 解决方案
一、uni-app项目 在项目根目录中找到 manifest.json 文件,在左侧导航栏选择源码视图,找到mp-weixin 节点,在节点后面加上:可能要重新运行。
"requiredPrivateInfos": [
"getLocation","onLocationChange","startLocationUpdateBackground"
"chooseAddress"
]
五、request-miniprogram 配置网络请求 拦截器
有时无效,看看有没有安装好。看看你项目中有没有他
npm init -y 在项目根目录初始化package.json文件
npm i @escook/request-miniprogram -S 下载网络请求包
https://blog.csdn.net/weixin_66556453/article/details/125435281
来源:https://www.cnblogs.com/xbding/p/17156328.html |