解析vue中的$mount

下面为你详细讲解解析Vue中的$mount的完整攻略:

1.概述

  • $mount是Vue实例化后挂载到DOM节点的入口函数,用于手动挂载不适用于el选项的情况。
  • 根据不同的使用场景,$mount呈现出不同的表现,如Static Rendering、Client Side Rendering、Server Side Rendering等.
  • 在解析$mount之前,需要先了解Vue的生命周期函数,以及Vue的响应式原理。

2.$mount的语法

  • $mount方法可以接收一个选择器(CSS选择器),也可以接收一个DOM节点。
//接收选择器
let vm = new Vue({
  ...
})
vm.$mount('#app')
//接收DOM节点
let app = document.getElementById('app')
let vm = new Vue({
  ...
})
vm.$mount(app)

3.$mount的使用场景

3.1 静态渲染

  • 当我们通过Vue的template选项进行静态页面渲染时,需要手动使用$mount进行挂载。
<div id='app'></div>
<script>
let vm = new Vue({
  template:'#app',
  data:{
    msg:'hello'
  }
})
vm.$mount('#app')
</script>

3.2 客户端渲染

  • 应用程序部署在客户端上,采用SPA单页应用,通过vue-router路由进行跳转,当路由与当前URL匹配时,挂载组件。
const Home = {
  template: '<div>Home</div>'
}
const Foo = {
  template: '<div>Foo</div>'
}
const routes = {
  '/': Home,
  '/foo': Foo
}
const router = new VueRouter({
  routes
})
new Vue({
  router
}).$mount('#app')

3.3 服务端渲染

  • 服务端渲染的核心是在服务器上直接渲染返回HTML字符串,达到首屏快速渲染。
//服务端渲染代码
const Vue = require('vue')
const server = require('express')()
server.get('*', (req, res) => {
  const app = new Vue({
    data: {
      url: req.url
    },
    template: `<div>访问的URL是:{{ url }}</div>`
  })
  const renderer = require('vue-server-renderer').createRenderer()
  renderer.renderToString(app, (err, html) => {
    if (err) {
      res.status(500).end('Internal Server Error')
      return
    }
    res.end(`
      <!DOCTYPE html>
      <html lang="en">
      <head><title>Hello</title></head>
      <body>${html}</body>
      </html>
    `)
  })
})

//客户端激活代码
const Vue = require('vue')
const app = new Vue({
  template: `<div>访问的URL是:{{ url }}</div>`
})
app.$mount('#app')

以上就是解析Vue中$mount的完整攻略,希望能够对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:解析vue中的$mount - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • Vue 3自定义指令开发的相关总结

    Vue 3自定义指令开发的相关总结 Vue 3自定义指令是Vue.js提供的一种扩展语法,可以用于对普通HTML标签的属性进行自定义绑定和操作。Vue 3的自定义指令与Vue 2的自定义指令相比,有较大的变化,需要开发者重新学习和掌握。 Vue 3自定义指令的基本语法 Vue 3中定义自定义指令的方式如下: const directive = { // di…

    Vue 2023年5月27日
    00
  • 手把手带你安装vue-cli并创建第一个vue-cli应用程序

    下面我将为您详细讲解如何安装vue-cli并创建第一个vue-cli应用程序的完整攻略。 1. 安装Node.js和npm 首先,您需要在您的电脑上安装Node.js和npm。如果您已经安装了,请跳过这一步。 您可以在Node.js的官方网站下载适合您操作系统的安装包,并按照提示进行安装。 2. 安装Vue CLI Vue CLI是一个基于Vue.js的快速…

    Vue 2023年5月27日
    00
  • Vue3关于响应式数据类型详解(ref、reactive、toRef、及toRefs)

    Vue 3是Vue.js框架的最新版本,Vue 3对Vue.js响应式系统进行了重构,引入了一些新特性。在Vue 3中,我们可以使用以下概念来定义响应式数据类型:ref、reactive、toRef、toRefs。 ref ref是Vue 3中的一个响应式数据类型,它可以将一个基本类型的值(如字符串、数字、布尔值)封装成一个响应式对象,从而使这个基本类型的值…

    Vue 2023年5月28日
    00
  • Vue中foreach数组与js中遍历数组的写法说明

    关于Vue中forEach数组与JavaScript中遍历数组的写法说明,我来给您详细讲解一下。 1. JavaScript中遍历数组的写法 在JavaScript中,我们可以使用for循环遍历数组,也可以使用forEach方法遍历数组。具体写法如下: 1.1 使用for循环遍历数组 let arr = [1, 2, 3, 4, 5] for (let i …

    Vue 2023年5月28日
    00
  • Vue.js中v-for指令的用法介绍

    Vue.js中v-for指令的用法介绍 在Vue.js中,v-for指令用于在模板中循环渲染一个数组或对象的数据。它的基本语法如下: <div v-for="(item, index) in items" :key="index"> {{ index }} – {{ item }} </div>…

    Vue 2023年5月27日
    00
  • 一篇文章带你使用Typescript封装一个Vue组件(简单易懂)

    下面我将为您详细讲解 “一篇文章带你使用Typescript封装一个Vue组件(简单易懂)” 的完整攻略。 1. 前置知识 在学习本文之前,需要您对以下几个知识点进行掌握:- Vue基础知识- Typescript基础知识- 组件开发基础知识 如果您还不熟悉以上知识点,可以先学习相关的基础教程。 2. 步骤说明 下面是封装Vue组件的详细步骤: 2.1. 安…

    Vue 2023年5月28日
    00
  • vue设计一个倒计时秒杀的组件详解

    Vue设计一个倒计时秒杀的组件是一种常见的需求,在电商领域比较常见。以下是实现该组件的详解: 设计组件 首先,我们需要考虑该组件的设计和功能。该组件需要实现一个倒计时的效果,并且在倒计时结束时需要执行某些操作,比如提交订单、弹出提示等。因此,我们可以将该组件分为两部分:倒计时显示和倒计时结束时的操作。 倒计时显示部分可以通过计算时分秒来实现;倒计时结束时的操…

    Vue 2023年5月29日
    00
  • vue实现拖拽或点击上传图片

    下面是关于“vue实现拖拽或点击上传图片”的完整攻略: 1. 介绍 在现代的Web应用程序中,用户上传图片是很常见的操作之一。为了提供更好的用户体验,我们通常希望用户能够通过拖拽文件或点击上传按钮实现上传图片。Vue.js是一种非常流行的JavaScript框架,它提供了非常棒的工具来实现这样的功能,并且也非常易于使用。 2. 实现步骤 在Vue中,实现拖拽…

    Vue 2023年5月28日
    00
合作推广
合作推广
分享本页
返回顶部