Vue中created和mounted使用场景分析

yizhihongxing

当我们在使用Vue框架的时候,经常会遇到使用createdmounted两个生命周期钩子函数的情况。这两个函数经常被混淆,它们的使用场景也有所不同。因此,在本文中,我们将详细讲解Vue中created和mounted使用场景分析这个话题。

1. createdmounted的区别

在介绍二者的使用场景之前,我们先来了解一下createdmounted的区别。

  • created是组件实例被创建时调用。在这个阶段,模板渲染尚未开始,DOM元素也没有被创建。只有实例才被创建,并在实例化后立即运行的配置的选项(data, methods等)。

  • mounted是DOM元素已经在页面上渲染出来后调用。在挂载阶段,Vue实例将模板编译成实际的DOM,并将其渲染在页面上。

综上所述,created是在Vue实例创建后立即调用的生命周期钩子,而mounted是在Vue将模板编译为实际的DOM,并将其渲染出来时调用的生命周期钩子。

2. created的使用场景

对于created,通常用于:

  • 初始化某些数据,常见的方式是通过在data中定义。

  • 设置某些异步请求或调用,比如利用fetch请求数据。

  • 发送事件。

下面是一个关于created的示例:

<template>
    <div>{{ message }}</div>
</template>

<script>
export default {
  data() {
    return {
      message: 'Hello Vue!'
    }
  },

  created() {
    console.log('组件被创建啦!');
  },

  methods: {
    sayHello() {
      console.log('Hello!');
    }
  }
}
</script>

在上面的代码中,我们可以看到,在created函数中,我们仅仅是打印了一条输出语句,用于表明组件已经创建出来。同时,在data中定义了一个message的值,该值在模板中显示。

3. mounted的使用场景

对于mounted,我们通常用于:

  • 操作DOM元素,比如获取元素的尺寸、颜色等属性。

  • 发送网络请求和接收响应。

  • 经常使用第三方库,比如图表、地图等。

下面是一个关于mounted的示例:

<template>
    <div id="mycanvas"></div>
</template>

<script>
import echarts from 'echarts';

export default {
  data() {
    return {
      myChart: {}
    }
  },

  mounted() {
    console.log('图表准备好啦!');
    this.myChart = echarts.init(document.getElementById('mycanvas'));
    this.myChart.setOption({
      series: [{
        data: [30, 40, 20, 50, 70, 80]
      }]
    });
  },
}
</script>

在上面的代码中,我们使用了echarts图表库来绘制一个图表,并将其渲染到页面的mycanvas元素中。mounted函数被调用时,表示页面上的元素已经被渲染出来了,此时我们就有了足够的元素来操作图表库。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Vue中created和mounted使用场景分析 - Python技术站

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

相关文章

  • bootstrap响应式表格实例详解

    Bootstrap响应式表格实例详解 Bootstrap是一个流行的前端开发框架,可以快速地开发出响应式的网站。其中一个功能是响应式表格,可以根据不同的屏幕尺寸自动调整表格的显示方式。本文将详细讲解如何使用Bootstrap创建响应式表格。 准备工作 首先需引入Bootstrap框架的CSS和JS文件。如下: <!– 引入Bootstrap的CSS文…

    css 2023年6月10日
    00
  • JS实现逐页将PDF文件转为图片格式

    下面我将详细讲解如何使用JavaScript实现逐页将PDF文件转为图片格式的完整攻略。该攻略分为以下几个步骤: 安装依赖 读取PDF文件 将每一页PDF文件转为图片格式 将转换后的图片格式保存到服务器中 接下来我将详细解释每一步骤。 1. 安装依赖 要使用JavaScript将PDF文件转为图片格式,需要安装一个名为pdf2img的Node.js库。使用下…

    css 2023年6月10日
    00
  • CSS网页布局入门教程10:带当前标识的标签式横向导航

    下面我将为你详细讲解“CSS网页布局入门教程10:带当前标识的标签式横向导航”的完整攻略。 1. 什么是带当前标识的标签式横向导航? 带当前标识的标签式横向导航是一种常见的网页布局方式,它通常用于网站顶部的导航栏中。这种导航栏将多个链接以标签页的形式展现出来,用户可以通过点击标签页来跳转到对应页面。而带当前标识则是指,当前所处于的标签页将被特别标识出来,以帮…

    css 2023年6月9日
    00
  • js cavans实现静态滚动弹幕

    1. 简介 Cavans 是 HTML5 新增的元素,它可以让开发者在浏览器上绘制图形、动画等。本篇攻略讲解如何使用 Canvas 实现静态的滚动弹幕。 2. 准备工作 为了使用 Canvas 实现滚动弹幕,需要先在 HTML 中添加一个 Canvas 元素。以下是添加 Canvas 元素的示例代码: <canvas id="myCanvas…

    css 2023年6月11日
    00
  • Jquery插件之Fancybox丰富的弹出层效果附源码下载

    下面是针对“Jquery插件之Fancybox丰富的弹出层效果附源码下载”的完整攻略。 1. Fancybox是什么 Fancybox是一个轻量级且易于使用的jQuery插件,可以在网页上创建漂亮的、响应式的弹出层(lightbox)。它支持多种内容类型,例如图片、HTML元素、嵌入在iframe中的页面等,可以进行自定义设置以适应不同的应用场景。 2. F…

    css 2023年6月9日
    00
  • 举例讲解jQuery中可见性过滤选择器的使用

    我们来详细讲解一下jQuery中可见性过滤选择器的使用攻略。 一、可见性过滤选择器介绍 可见性过滤选择器是 jQuery 中的一种用于筛选元素的方法,可以用于查找页面上可见或隐藏的元素。在可见性过滤选择器中提供了若干种方法来进行元素的筛选,如下: :visible (选择所有可见元素) :hidden (选择所有隐藏元素) :focus (选择当前获得焦点的…

    css 2023年6月9日
    00
  • VsCode 使用基础_VsCode入门小技巧

    VsCode 使用基础 环境准备 在开始使用VsCode之前,我们需要对其环境进行一些准备工作: 安装VsCode:从官网 https://code.visualstudio.com/ 下载并安装VsCode; 安装必要的插件:在VsCode菜单栏中选择“扩展”,搜索并安装以下插件: Markdown All in One:用于编写markdown文件 Br…

    css 2023年6月10日
    00
  • calc()实现满屏背景定宽内容

    要实现“calc()实现满屏背景定宽内容”的效果,需要进行如下步骤: 1. 使用calc()计算内容区域宽度 我们可以使用calc()进行宽度计算,计算的公式为:100% – 定宽内容区域宽度。例如,如果我们需要固定内容区域宽度为800px,那么公式就是:calc(100% – 800px)。 2. 设置内容区域的宽度 使用上一步计算好的数值,将其作为内容区…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部