当前位置:首页 > 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实现visual

vue实现visual

Vue 实现可视化(Visual)的常见方法 在 Vue 中实现可视化通常涉及数据可视化库的集成,以下是几种主流方案: 使用 ECharts ECharts 是一个强大的 JavaScript 图表…

vue实现缩放

vue实现缩放

Vue 实现缩放的方法 在 Vue 中实现缩放功能可以通过多种方式完成,以下是一些常见的方法: 使用 CSS transform 属性 通过 CSS 的 transform: scale() 属性可…

vue 实现滚动

vue 实现滚动

实现滚动的基本方法 在Vue中实现滚动效果可以通过多种方式完成,包括使用原生JavaScript、CSS或第三方库。以下是一些常见的方法: 使用window.scrollTo方法实现页面滚动 可以通…

vue实现mouseout

vue实现mouseout

Vue 实现 mouseout 事件的方法 在 Vue 中实现 mouseout 事件可以通过多种方式完成,以下是几种常见的方法: 使用 v-on 指令 Vue 提供了 v-on 指令(或简写为 @…

vue实现 hover

vue实现 hover

实现 Vue 中的 hover 效果 在 Vue 中实现 hover 效果可以通过多种方式完成,以下是常见的几种方法: 使用 CSS 伪类 最简单的方式是直接使用 CSS 的 :hover 伪类,无…

自实现vue

自实现vue

实现 Vue 的核心功能 要实现一个简化版的 Vue,需要理解其核心功能:数据响应式、模板编译、虚拟 DOM 和组件系统。以下是关键步骤的分解: 数据响应式 Vue 使用 Object.define…