浅谈一下Vue生命周期中mounted和created的区别

下面我来详细讲解一下“浅谈一下Vue生命周期中mounted和created的区别”的完整攻略。

什么是Vue生命周期

Vue生命周期是指Vue实例从创建到销毁期间所经历的所有状态及操作,包括创建、挂载、更新、渲染等一系列过程。Vue的生命周期一共分为8个阶段:创建阶段(beforeCreate、created)、挂载阶段(beforeMount、mounted)、更新阶段(beforeUpdate、updated)、卸载阶段(beforeDestroy、destroyed),其中beforeCreate和created是创建阶段,beforeMount和mounted是挂载阶段。

mounted和created的区别

  1. created
    created是Vue实例被创建完成后的状态,在此阶段已完成了数据观测、属性计算、methods方法绑定,但DOM节点并未被创建,也无法访问到DOM操作。常见的用法是在这个阶段中处理一些数据的初始化和异步请求,也可以在此阶段中注册全局事件。

例如:

// 异步请求示例
created() {
  axios.get('https://api.example.com/data').then(res => {
    this.dataList = res.data
  })
}

// 注册全局事件示例
created() {
  EventBus.$on('event', this.eventHandler)
}
  1. mounted
    mounted是Vue实例挂载到页面完成后的状态,此时Vue实例的DOM节点已经生成,可以进行DOM操作,也可以直接访问DOM节点。经常用于依赖外部库的操作,比如Google Maps的初始化、动态设置元素高度宽度、访问子组件等。

例如:

// Google Maps 初始化示例
mounted() {
  const map = new google.maps.Map(document.getElementById('map'), {
    center: {lat: -34.397, lng: 150.644},
    zoom: 8
  })
}

// 动态设置元素高度示例
mounted() {
  this.$nextTick(() => {
    this.$refs.list.style.height = this.$refs.list.offsetHeight + 'px'
  })
}

// 访问子组件示例
mounted() {
  console.log(this.$refs.childComponent.foo)
}

总结

在Vue生命周期中,created和mounted是属于不同的阶段,其主要区别在于DOM节点的生成和操作时机不同,created用于数据的初始化和异步请求,以及注册全局事件等。而mounted则用于访问DOM节点并进行DOM操作,比如依赖外部库的操作、动态设置元素高度宽度、访问子组件等。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈一下Vue生命周期中mounted和created的区别 - Python技术站

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

相关文章

  • 修改文件名的批处理代码

    下面是修改文件名的批处理代码的完整攻略: 1. 批处理代码概述 批处理代码可以帮助批量修改文件的名称,大大提高了工作效率。其基本流程如下: 指定源文件夹路径 使用for循环遍历源文件夹中的文件 对每个文件执行重命名操作 完成后输出成功信息 2. 修改文件名的代码示例 下面是一个简单的修改文件名的代码示例: @echo off setlocal EnableD…

    other 2023年6月26日
    00
  • C语言:min和max头文件

    C语言:min和max头文件 在C语言中,我们经常需要比较两个数的大小并取得其中的最大值或最小值。虽然可以自行编写函数来实现此功能,但是C语言标准库中提供了min和max头文件,可以更方便地实现这些操作。 min和max头文件的介绍 min和max头文件是C语言标准库中的头文件,它们分别定义了一组宏(macros),可以用于获取两个数中的最小值或最大值。 这…

    其他 2023年3月28日
    00
  • Make命令基础用法教程

    Make命令基础用法教程 Make是一种自动化工具,它通过读取Makefile文件中的规则,执行预定的命令,用于自动编译代码。本文将详细介绍Make命令的基本用法和工作原理。 安装Make 在大多数Linux系统中,Make已经预安装。如果您的系统没有预安装,您可以使用以下命令安装: sudo apt-get install build-essential …

    other 2023年6月26日
    00
  • nodeserver零基础——开发环境文件自动重载

    nodeserver零基础——开发环境文件自动重载 在软件开发中,不断地修改代码,并且反复测试是一个必不可少的过程。然而,对于初学者来说,这一过程会变得很繁琐。每一次修改代码后,需要手动重启服务器,才能看到修改后的效果,这对于时间的浪费是不必要的。因此,为了方便初学者,现在我们来介绍一种零基础操作的方法,将我们的开发环境改进为支持自动重载的环境。 什么是文件…

    其他 2023年3月28日
    00
  • Hadoop源码分析六启动文件namenode原理详解

    Hadoop源码分析六启动文件namenode原理详解 一、概述 在Hadoop中,NameNode是整个分布式文件系统的组成部分,主要负责文件系统的管理和元数据的存储。本文将在分析Hadoop的启动文件时,结合源码讲解NameNode的启动过程及原理。 二、启动 NameNode 的步骤 启动 NameNode 的流程主要包括以下几个步骤: 1. 定义运行…

    other 2023年6月27日
    00
  • 聊一聊和nacos2.0.0对接那些事

    聊一聊和nacos2.0.0对接那些事 为了实现服务的注册、发现和配置管理,我们经常需要使用分布式配置中心。而Nacos就是一款非常优秀的分布式配置中心,今天我们来聊一聊和Nacos2.0.0对接的一些事情。 概述 在将服务对接到Nacos上时,我们需要了解以下这些方面: Nacos的核心概念 Nacos的使用方式 与Nacos2.0.0的集成 Nacos的…

    其他 2023年3月28日
    00
  • Win10蓝屏终止代码合集(附解决方法)

    首先,我们需要了解什么是Win10蓝屏终止代码。在Win10系统中,如果系统发生错误或遇到故障,会出现蓝色的屏幕提示,并伴随有一个类似于0x0000000的终止代码,这就是Win10蓝屏终止代码。这个代码可以帮助我们定位系统出现问题的根源,同时也为解决问题提供了线索。 以下是Win10常见的蓝屏终止代码及其可能的原因和解决方法: 1. 0x0000001E …

    other 2023年6月26日
    00
  • Android系统的五种数据存储形式实例(一)

    Android系统的五种数据存储形式实例(一) 在Android开发中,我们可以使用多种方式来存储数据。下面是Android系统中常用的五种数据存储形式的实例。 1. Shared Preferences(共享偏好设置) Shared Preferences是一种轻量级的存储方式,用于存储少量的键值对数据。以下是一个示例: // 存储数据 SharedPre…

    other 2023年10月13日
    00
合作推广
合作推广
分享本页
返回顶部