今天做项目遇到一个问题,是使用vuex的Store首字母大写的问题,现在解决了,并记录下。

  • 这是store/index.js文件:
import Vue from 'vue'
import Vuex from 'vuex'

// 安装插件
Vue.use(Vuex)

// 创建Store对象
const store = new Vuex.store({
  state: {
    cartList: []
  },
  mutations: {
    addCart(state, payload) {
      state.cartList.push(payload)
    }
  }
})

// 挂载Vue实例上
export default store

在这里插入图片描述

  • 报错说:TypeError: WEBPACK_IMPORTED_MODULE_1_vuex.a.store is not a constructor
  • 大概意思是尝试将不是构造器的东西当构造器来使用,所以报错了。
  • 在网上看其他博客了解到这里的Vuex.store的S不能小写

这个报错的是_vuex.default.store 不是一个构造函数因为在我们用vuex的时候需要将用到的actions,mutations模块最终导出,在导出的时候new Vuex.Store中的Store小写了,这里的一定要大写,就相当于我们在使用构造函数(类)的时候首字母要大写

在这里插入图片描述

Logo

前往低代码交流专区

更多推荐