【问题标题】:"export 'createApp' was not found in 'vue'“在‘​​vue’中找不到导出‘createApp’
【发布时间】:2021-07-21 16:23:15
【问题描述】:

我是一个新手 vuejs 开发人员,我尝试使用 vuex 进行状态管理,但遇到错误。代码如下:

**main.js file**

    import { createApp } from 'vue';

import router from './router';
import store from './store/index';
import App from './App';
import vuetify from './plugins/vuetify';

const app = createApp(App);

app.use(router);
app.use(store);
app.use(vuetify);
app.mount('#app');

  **error**

警告编译时有 4 个警告
./src/main.js 中的警告

“在'vue'中找不到导出'createApp'

./node_modules/vuex/dist/vuex.esm-browser.js 中的警告

“在'vue'中找不到导出'inject'

./node_modules/vuex/dist/vuex.esm-browser.js 中的警告

“在'vue'中找不到导出'reactive'

./node_modules/vuex/dist/vuex.esm-browser.js 中的警告

“在'vue'中找不到导出'watch'

【问题讨论】:

    标签: vue.js vuejs2 vuetify.js vuex


    【解决方案1】:

    错误(以及您添加到问题中的)似乎表明您正在运行 Vue 2,但您的代码实际上使用的是 Vue 3 的 API。

    需要最少更改的最简单解决方案是在您的项目中安装 Vue 3:

    npm install --save vue@3
    

    【讨论】:

    • 或者使用 vue2 api..... 比如vuejs.org/v2/guide/instance.html
    • 对其进行了升级,但出现了另一个错误`错误:[VuetifyLoaderPlugin 错误] 找不到 vue-loader 的匹配规则。确保至少有一个使用 vue-loader 的根级规则,并且在 VueLoaderPlugin 之后应用 VuetifyLoaderPlugin。 `
    • 没有足够的上下文来解决该问题。听起来您试图手动设置项目。我推荐使用Vue CLI 来搭建一个新项目。使用该工具可以轻松添加 Vuex、Vue Router 和 Vuetify。
    【解决方案2】:

    我认为,你需要这样使用:

    const app = Vue.createApp({/* options */})
    

    import { createApp } from "vue";
    const app = createApp({
        // root instance definition
    });
    

    我猜 main.js 不适合那个定义。

    来自Vue document的参考

    【讨论】:

      猜你喜欢
      • 2021-01-23
      • 2021-12-16
      • 2020-12-25
      • 2021-04-26
      • 2021-01-10
      • 2021-01-10
      • 2021-03-04
      • 2021-04-08
      • 2021-07-08
      相关资源
      最近更新 更多