繁体   English   中英

如何修复“请求的模块不提供名为‘默认’的导出”?

[英]How do I fix "the requested module does not provide an export named 'default'"?

我正在使用 JS 和 Vue.js 开发应用程序并在线出错:

import Vue from 'vue'

我明白了:

未捕获的语法错误:请求的模块“/node_modules/.vite/vue.js?v=6dba2ea6”不提供名为“默认”的导出

我用谷歌搜索可能是由旧的Vue版本引起的,在我的package.json vue版本是3.2.6,但是

npm view vue version

返回 2.6.14,我尝试用 Vue CLI 升级它

vue upgrade

但是 npm 命令仍然返回 2.6.14

我希望你能帮助我,我做错了什么或者甚至不是版本问题? 谢谢!

只需在 Vue 周围添加 {},如下所示

从 'vue' 导入 {Vue}

它会起作用的

另一种解决方案是像这样使用createApp() function:

import { createApp } from 'vue';
createApp(App).mount('#app')

我在 Vue JS 方面没有经验,但看起来他们不再导出单个 object。 游侠集合的东西。

通常从 Vue 2 开始,在 src/main.js 文件中,我们通过调用一个新的 Vue 作为创建应用程序实例的构造函数来引导应用程序。

import Vue from "vue";
import App from "./App.vue";
import router from './router'

const app = new Vue({
  router,
  render: h => h(App)
});

对于 Vue 3,初始化代码语法发生了变化,更加简洁紧凑

import { createApp } from "vue";

createApp(App).use(store).mount('#app')

这对我有用:-

import * as Vue from 'vue';

和不同的包类似: -

import * as Vuex from 'vuex';
import * as VueRouter from 'vue-router';

截至撰写本文时:-

"devDependencies": {
       ...
        "vue": "^3.2.45",

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM