当前位置:首页 > VUE

vue 实现挂载

2026-01-07 17:51:36VUE

Vue 实现挂载的基本方法

在 Vue 中,挂载是将 Vue 实例与 DOM 元素关联的过程。通过挂载,Vue 可以管理 DOM 并实现数据绑定和响应式更新。

创建 Vue 实例并挂载

const app = new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})

el 选项指定挂载目标,可以是 CSS 选择器字符串或 DOM 元素。Vue 会将实例挂载到匹配的元素上。

延迟挂载 如果不立即指定 el 选项,可以稍后手动挂载:

vue 实现挂载

const app = new Vue({
  data: {
    message: 'Hello Vue!'
  }
})

// 稍后挂载
app.$mount('#app')

挂载生命周期

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

  1. beforeCreate:实例初始化后,数据观测和事件配置之前调用
  2. created:实例创建完成后调用,已完成数据观测
  3. beforeMount:挂载开始之前调用
  4. mounted:实例被挂载后调用,此时 DOM 已更新

动态挂载与卸载

动态挂载

vue 实现挂载

const Component = Vue.extend({
  template: '<div>动态组件</div>'
})

// 创建并挂载组件实例
new Component().$mount('#dynamic-mount')

卸载实例

app.$destroy()

调用 $destroy() 会完全销毁实例,清理它与其他实例的连接,解绑所有指令及事件监听器。

服务端渲染中的挂载

在服务端渲染 (SSR) 场景中,挂载行为有所不同:

// 客户端激活
const app = new Vue({
  ssr: true,
  // 其他选项
})

// 仅客户端执行挂载
if (typeof window !== 'undefined') {
  app.$mount('#app')
}

挂载注意事项

  • 挂载元素会被 Vue 生成的 DOM 替换,原内容会被覆盖
  • 每个 Vue 实例只能挂载到一个 DOM 元素
  • 根实例挂载后,其模板中的组件也会递归挂载
  • 避免挂载到 <html><body> 元素

标签: vue
分享给朋友:

相关文章

vue router 实现

vue router 实现

Vue Router 的实现 Vue Router 是 Vue.js 的官方路由管理器,用于构建单页面应用(SPA)。以下是 Vue Router 的核心实现方式。 安装 Vue Router 通过…

vue 实现视频

vue 实现视频

Vue 实现视频播放功能 使用 Vue 实现视频播放功能可以通过 HTML5 的 <video> 标签或第三方库(如 video.js)来实现。以下是两种常见的方法: 使用 HTML5…

实现vue datepicker

实现vue datepicker

安装依赖 使用 vue-datepicker 或第三方库如 v-calendar 或 vue2-datepicker。以 vue2-datepicker 为例: npm install vue2…

vue实现123456

vue实现123456

Vue 实现数字 123456 的显示 在 Vue 中显示数字 123456 非常简单,可以通过以下方法实现: 方法一:直接在模板中显示 <template> <div>…

vue 菜单实现

vue 菜单实现

Vue 菜单实现方法 在Vue中实现菜单功能可以通过多种方式完成,以下是几种常见的实现方法: 使用v-for动态生成菜单 通过数据驱动的方式动态渲染菜单项,适合菜单内容可能变化的场景: <t…

vue实现Pop

vue实现Pop

Vue 实现 Popover 组件的方法 使用 Vue 内置指令 v-show/v-if 和事件监听 通过 Vue 的指令和事件绑定实现基础的 Popover 功能。定义一个布尔值控制 Popover…