当前位置:首页 > VUE

vue 实现挂载

2026-02-10 01:32:35VUE

Vue 实现挂载的核心方法

在 Vue 中,挂载是将 Vue 实例与 DOM 元素关联的过程,通常通过 mount 方法完成。以下是常见的实现方式:

使用 createAppmount

import { createApp } from 'vue';
const app = createApp({
  data() {
    return { message: 'Hello Vue!' };
  }
});
app.mount('#app'); // 挂载到 id 为 app 的 DOM 元素

手动挂载未编译模板

const vm = new Vue({
  template: '<div>{{ message }}</div>',
  data: { message: 'Hello!' }
}).$mount('#app'); // 等价于 el: '#app'

延迟挂载

const vm = new Vue({
  data: { message: 'Delayed mount' }
});
vm.$mount(); // 不传参数时返回实例
document.getElementById('app').appendChild(vm.$el);

挂载的生命周期

挂载过程会触发以下生命周期钩子:

  • beforeCreate:实例初始化后调用
  • created:实例创建完成
  • beforeMount:挂载开始前
  • mounted:挂载完成后调用

动态挂载场景

对于需要动态创建的组件:

import { createApp } from 'vue';
import DynamicComponent from './Dynamic.vue';

const mountComponent = (targetElement) => {
  const app = createApp(DynamicComponent);
  app.mount(targetElement);
  return app;
};

服务端渲染注意事项

SSR 环境下应避免使用客户端专用代码:

if (typeof window !== 'undefined') {
  app.mount('#app');
}

卸载实例

需要销毁实例时:

const app = createApp(App);
const vm = app.mount('#app');
// 卸载操作
app.unmount();

常见问题解决

挂载目标不存在 确保 DOM 已加载完成:

document.addEventListener('DOMContentLoaded', () => {
  app.mount('#app');
});

多次挂载警告 同一实例不应重复挂载,需先卸载旧实例。

组件未注册 全局或局部注册组件后再挂载:

vue 实现挂载

app.component('my-component', {...});

标签: vue
分享给朋友:

相关文章

vue怎么实现页面返回

vue怎么实现页面返回

Vue 实现页面返回的方法 在 Vue 中实现页面返回功能,可以通过以下几种方式完成,具体取决于项目使用的路由模式和技术栈。 使用 Vue Router 的编程式导航 通过 this.$router…

vue SSG实现

vue SSG实现

Vue SSG 实现方法 Vue 的静态站点生成(SSG)可以通过多种工具和框架实现,以下是几种常见的方法: 使用 VuePress VuePress 是一个基于 Vue 的静态站点生成器,适合文档…

vue实现异步

vue实现异步

Vue 实现异步操作的常见方法 Vue 提供了多种方式来处理异步操作,包括数据获取、事件处理等场景。 使用 async/await 在 Vue 方法中可以直接使用 async/await 语法处理异…

通过vue实现

通过vue实现

Vue 实现方法 安装 Vue 确保已安装 Node.js 和 npm,通过以下命令安装 Vue CLI: npm install -g @vue/cli 创建 Vue 项目 使用 Vue CLI…

vue核心实现

vue核心实现

Vue 核心实现原理 Vue.js 的核心实现主要包括响应式系统、虚拟 DOM、模板编译和组件化机制。以下是关键实现原理的详细说明: 响应式系统 Vue 使用 Object.defineProper…

vue实现白板

vue实现白板

Vue实现白板功能 使用Vue实现白板功能可以通过HTML5的Canvas API结合Vue的响应式特性来完成。以下是实现白板功能的关键步骤: 安装依赖 在Vue项目中安装必要的依赖,如vue-dr…