You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VueJS 2迁移VueJS 3遇GLOBAL_MOUNT废弃警告,按文档操作仍未解决

Vue3 全局挂载弃用警告未解决问题

错误提示

[Vue warn]: (deprecation GLOBAL_MOUNT) 全局应用启动API已变更:vm.$mount() 和 "el" 选项已被移除,请改用 createApp(RootComponent).mount()。

我已按照官方文档修改代码,但该警告仍未消失。

当前main.js代码

import { defineComponent } from 'vue';
import Vue, { createApp } from 'vue';
import App from './App.vue';
import router from './router';
import store from './store';
import moment from 'moment';

const AppComponent = defineComponent({
  components: { App },
  setup () {
    moment.locale('en');
  },
});

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

问题修复方案

问题根源

  1. 导入了Vue3中已废弃的全局Vue对象,这会触发旧API的兼容检测,导致警告弹出。Vue3的新API完全不需要导入这个全局对象。
  2. 不必要地用defineComponent包裹根组件App,多此一举的同时可能引发不必要的组件层级问题。

修改后的代码

import { createApp } from 'vue';
import App from './App.vue';
import router from './router';
import store from './store';
import moment from 'moment';

// 直接设置moment语言环境,无需额外组件
moment.locale('en');

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

内容的提问来源于stack exchange,提问作者Augusto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 13:16:07