1

我目前正在开发 Vue 3 + TypeScript 项目。我想使用 Vuex 进行简单的登录管理。但是当我创建时store.ts,我收到了这个错误:

Module '"../../vuex"' has no exported member 'createStore'.

我的store.ts样子是这样的:

import { createStore } from "vuex";

export default createStore({
  state: {
    loggedIn: false,
  },
  mutations: {
    logIn(state) {
      state.loggedIn = true;
    },
    logOut(state) {
      state.loggedIn = false;
    },
  },
  actions: {},
  modules: {},
});

我尝试过使用 Vuex@3 和 Vuex@next(又名 Vuex@4)。两者都有这个错误。我还尝试使用以下方法清除缓存:

npm cache clear --force

...并重新安装所有节点模块。包括安装 Vuex:

vue add vuex

准确地说,我也使用过这个:

npm i --save vuex@next

我总是遇到同样的错误。

我的package.json

{
  "name": "fancy-project",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },
  "dependencies": {
    "core-js": "^3.6.5",
    "register-service-worker": "^1.7.1",
    "vue": "^3.0.0",
    "vue-router": "^4.0.0-0",
    "vuex": "^4.0.2"
  },
  "devDependencies": {
    "@typescript-eslint/eslint-plugin": "^4.18.0",
    "@typescript-eslint/parser": "^4.18.0",
    "@vue/cli-plugin-babel": "~4.5.0",
    "@vue/cli-plugin-eslint": "~4.5.0",
    "@vue/cli-plugin-pwa": "~4.5.0",
    "@vue/cli-plugin-router": "~4.5.0",
    "@vue/cli-plugin-typescript": "~4.5.0",
    "@vue/cli-plugin-vuex": "~4.5.0",
    "@vue/cli-service": "~4.5.0",
    "@vue/compiler-sfc": "^3.0.0",
    "@vue/eslint-config-prettier": "^6.0.0",
    "@vue/eslint-config-typescript": "^7.0.0",
    "eslint": "^6.7.2",
    "eslint-plugin-prettier": "^3.3.1",
    "eslint-plugin-vue": "^7.0.0",
    "prettier": "^2.2.1",
    "sass": "^1.26.5",
    "sass-loader": "^8.0.2",
    "typescript": "~4.1.5"
  }
}

默认值,vue-cli main.ts

import { createApp } from "vue";
import App from "./App.vue";
import "./registerServiceWorker";
import router from "./router";
import store from "./store";

createApp(App).use(store).use(router).mount("#app");
4

0 回答 0