Vue项目中配置vuex版本问题错误

踩坑记录 Uncaught TypeError: Object(…) is not a function

原本旧项目框架的问题,导致打包的内容比较大,vendor 这种文件达到了 4M,个人感觉是存在一些问题的,想着优化下,正巧同事做了新模版,打包之后整体文件也就在 2M 左右,太强了,看来 vue-cli 脚手架还是要研究研究。
但是,当我满怀希望的替换了模版之后发现,启动报错 Uncaught TypeError: Object(…) is not a function,这个 BUG 是在我修改完其他的文件缺,再我移入旧项目的 vuex 中出现的。我第一感觉就是 vuex 哪里有啥问题。在此吐槽先 C 开头的某知名程序网站,乱指引,我排查了 3 个多小时的上面提到的大小写,命名,以及导出错误,结果在知乎上看到一个和我一样经历的文章
这个时候我才知道是版本的不一致导致的,我的 vue 版本是 2.x,而新的模版的 vuex 版本在 4.x,导致不兼容匹配。这里可以去查看package.json文件。
于是解决方案就出来了,升级 vue 版本到 3.x 或者降低 vuex 到 3.x:

1
2
npm uninstall vuex
npm install vuex@3.0.1 --save