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

vue实现轮询

实现轮询的基本方法 在Vue中实现轮询可以通过setInterval或setTimeout配合递归调用完成。轮询通常用于定期向服务器请求数据更新。 使用setInterval的简单示例: da…

vue实现modal

vue实现modal

Vue 实现 Modal 弹窗组件 使用 Vue 实现 Modal 弹窗组件可以通过多种方式,包括原生 Vue 组件、第三方库或自定义指令。以下是几种常见方法: 原生 Vue 组件实现 创建一个基…

vue实现handsontable

vue实现handsontable

Vue 中实现 Handsontable 要在 Vue 项目中集成 Handsontable,可以使用官方提供的 @handsontable/vue 封装库。以下是一个完整的实现步骤。 安装依赖…

vue实现海报

vue实现海报

Vue 实现海报生成方案 使用 html2canvas 库 html2canvas 是一个将 HTML 元素转换为 Canvas 的库,适合将 Vue 组件渲染为海报图片 安装依赖: npm in…

vue实现driver

vue实现driver

Vue 实现 Driver.js 引导功能 Driver.js 是一个轻量级的 JavaScript 库,用于在网页上创建引导式导览。以下是在 Vue 项目中集成 Driver.js 的详细方法:…

vue 实现滑动

vue 实现滑动

Vue 实现滑动效果的方法 在Vue中实现滑动效果可以通过多种方式,以下是几种常见的方法: 使用CSS过渡和动画 通过Vue的<transition>组件结合CSS过渡或动画实现滑动效…