15-生命周期

news2024/11/24 1:43:27

Vue生命周期 和 生命周期的四个阶段

 

 

 Vue生命周期总结:

四个阶段,八个钩子 -> 三个常用 created,mounted,beforeDestroy

 生命周期的钩子函数

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>


    <div id="app">
        <h3>{{title}}</h3>
        <div>
            <div>
                <button @click="count--">-</button>
                <span>{{count}}</span>
                <button @click="count++">+</button>
            </div>

        </div>

    </div>

    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>

    <script>
        const app = new Vue({

            el: '#app',
            data: {
                count: 100,
                title: "计数器"

            },

            // 1. 创建阶段 (准备数据)
            beforeCreate() {
                console.log("beforeCreate 响应数据准备好之前",this.count)
            },
            created() {
                console.log("created 响应数据准备好之后",this.count)
                // this.数据名 = 请求回来的数据
                // 可以开始发送初始化渲染的请求了
            },


            // 2. 挂载阶段 (渲染模板)
            beforeMount() {
                console.log("beforeMount 模板渲染之前",document.querySelector("h3").innerHTML)
            },
            mounted() {
                // 可以操作dom了
                console.log("mounted 模板渲染之后",document.querySelector("h3").innerHTML)
            },

            // 3. 更新阶段(修改数据 -> 更新视图)
            beforeUpdate(){
                console.log("beforeUpdare 数据修改了,视图还没更新",document.querySelector('span').innerHTML)
            },
            updated(){
                console.log("updated 数据修改了,视图已经更新",document.querySelector('span').innerHTML)

            },


            // 4. 卸载阶段
            beforeDestroy(){
                console.log("beforeDestroy,卸载前")

                // 清除掉一些Vue以外的资源占有,定时器,延时器...

            },
            destroyed(){
                console.log("destroyed,卸载后")

            }

        })

    </script>


</body>

</html>

 created应用

 created: 响应式数据准备好了,可以开始发送初始化渲染请求

 

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>


    <div id="app">
        <ul>
            <li v-for="(item,index) in list" :key="item.id">
                <div>
                    <div>{{item.title}}</div>
                    <div>
                        <span>{{item.source}}</span>
                        <span>{{item.time}}</span>
                    </div>
                </div>
                <div>
                    <img :src="item.img" alt="">
                </div>
            </li>
        </ul>

        </div>

    </div>

    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <script>
        // 接口地址: http://hmajax.itheima.net/api/news
        // 请求方式: get
        const app = new Vue({

            el: '#app',
            data: {
                list:[]
            },

            async created(){
                // 1. 发送请求,获取数据
               const res = await axios.get('http://hmajax.itheima.net/api/news')
               // 2. 将数据更新给 data 中的list 
               this.list = res.data.data
            }

           

        })

    </script>


</body>

</html>

mounted应用

mounted: 模板渲染完成,可以开始操作DOM

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>


    <div id="app">
        
        <div>
            <img>
            <div>
                <input type="text" v-model="words" id="inp">
                <button>搜索一下</button>
            </div>
        </div>

    </div>

    <script src="https://cdn.jsdelivr.net/npm/vue@2.7.14/dist/vue.js"></script>
    <script>
      
        const app = new Vue({

            el: '#app',
            data: {
             words:""
            },

            // 核心思路
            //1. 等待输入框渲染出来
            //2. 让输入框获取焦点
            mounted(){
                // console.log(document.querySelector("#inp"))
                document.querySelector("#inp").focus()
            }
            

           

        })

    </script>


</body>

</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/892582.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智能报警系统:利用人工智能保障安全和及时应对危险

引言&#xff1a;随着人工智能的快速发展&#xff0c;智能报警系统成为了一种高效、及时应对危险和保障安全的重要工具。通过分析监控视频中的图像、声音以及其他传感器数据&#xff0c;人工智能可以自动检测和识别火灾、破坏、烟雾、异常温度等情况&#xff0c;并及时触发报警…

STM32单片机SPI通信实战:示例代码详解与应用案例

引言&#xff1a; 单片机SPI&#xff08;串行外设接口&#xff09;通信是一种常用的串行同步通信协议&#xff0c;用于单片机与外设之间的高速数据传输。SPI通信具有简单、高效、可靠等特点&#xff0c;在各种嵌入式系统中被广泛应用。本文将介绍单片机SPI通信的原理、配置和性…

WebRTC | 网络传输协议RTP与RTCP

目录 一、UDP与TCP 1. TCP 2. UDP 二、RTP 1. RTP协议头 &#xff08;1&#xff09;V&#xff08;Version&#xff09;字段 &#xff08;2&#xff09;P&#xff08;Padding&#xff09;字段 &#xff08;3&#xff09;X&#xff08;eXtension&#xff09;字段 &#x…

嵌入式笔试面试刷题(day11)

文章目录 前言一、字节流&#xff0c;数据报&#xff0c;报文二、makefile怎么引入库和模块三、多次free一块内存空间会怎么样四、字符操作函数越界会发生什么五、QT中一个信号可以连接多个槽函数吗六、QT中一个槽函数可以对应多个信号吗总结 前言 本篇文章继续刷题。 一、字…

系统架构设计师---计算机基础知识之存储管理

存储管理的主要任务&#xff1a;提高主存的利用率、扩充主存以及对主存信息实现有效保护。 存储管理的对象&#xff1a;主存储器(简称主存或内存)。 逻辑地址和物理地址&#xff1a;用户编程所用的地址称为逻辑地址(虚地址)&#xff0c;而实际的内存地址 则称为物理地址(实地…

【组合数学】CF1622 D

Problem - 1622D - Codeforces 题意&#xff1a; 思路&#xff1a; 一开始的思路&#xff1a; 事实上&#xff0c;观察样例可知&#xff0c;如果一个小区间被包含在大区间里面&#xff0c;那么我们需要计算的是大区间的贡献 所以只需要找出大区间即可 一开始想的是找出所有…

C语言案例 判断是否为回文数-06.1

题目&#xff1a;随机输入一个5位数&#xff0c;判断它是不是回文数 步骤一&#xff1a;定义程序的目标 编写C程序&#xff0c;随机输入一个5位数&#xff0c;判断它是不是回文数 步骤二&#xff1a;程序设计 原理&#xff1a;即12321是回文数&#xff0c;个位与万位相同&#…

剑指Offer68-II.二叉树的最近公共祖先 C++

1、题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个结点 p、q&#xff0c;最近公共祖先表示为一个结点 x&#xff0c;满足 x 是 p、q 的祖先且 x 的深度尽可能大&#xff08;一个节点也可以…

前端开发,怎么解决浏览器兼容性问题? - 易智编译EaseEditing

解决浏览器兼容性问题是前端开发中常见的挑战之一。不同的浏览器可能对网页元素的渲染和功能支持有所不同&#xff0c;因此需要采取一些策略来确保您的网页在不同浏览器上都能正常运行和呈现。以下是一些解决浏览器兼容性问题的方法和策略&#xff1a; 使用CSS Reset&#xff…

(三)行为模式:2、命令模式(Command Pattern)(C++示例)

目录 1、命令模式&#xff08;Command Pattern&#xff09;含义 2、命令模式的UML图学习 3、命令模式的应用场景 4、命令模式的优缺点 5、C实现命令模式的实例 1、命令模式&#xff08;Command Pattern&#xff09;含义 命令模式&#xff08;Command&#xff09;&#xff…

土地利用变化碳排放效应的遥感监测、生态系统碳库的遥感估算、收支的遥感模拟、能源消耗碳排放空间格局模拟

以全球变暖为主要特征的气候变化已成为全球性环境问题&#xff0c;对全球可持续发展带来严峻挑战。2015年多国在《巴黎协定》上明确提出缔约方应尽快实现碳达峰和碳中和目标。2019年第49届 IPCC全会明确增加了基于卫星遥感的排放清单校验方法。随着碳中和目标以及全球碳盘点的现…

UI界面设置

文章目录 1. 修改 share.html 内容如下&#xff1a;2. 修改 html 文件格式为 utf-83.保存&#xff0c;运行程序4. 访问页面 1. 修改 share.html 内容如下&#xff1a; <!DOCTYPE html><html> <head><meta charset"utf-8"><title>1v1屏…

创建和使用角色

创建和使用角色 根据下列要求&#xff0c;在 /home/curtis/ansible/roles 中创建名为 apache 的角色&#xff1a; httpd 软件包已安装&#xff0c;设为在系统启动时启用并启动 防火墙已启用并正在运行&#xff0c;并使用允许访问 Web 服务器的规则 模板文件 index.html.j2 已存…

【ROS】服务通信--从理论介绍到模型实现

一、概念介绍 服务通信也是ROS中一种极其常用的通信模式&#xff0c;服务通信是基于请求响应模式的&#xff0c;是一种应答机制。也即: 一个节点A向另一个节点B发送请求&#xff0c;B接收处理请求并产生响应结果返回给A。 一个节点需要向相机节点发送拍照请求&#xff0c;相机…

关于STM32Cube的HAL库使用RTOS设置且给芯片下载的注意事项

学了标准库和RTOS之后&#xff0c;发现HAL库开发比较快&#xff0c;于是尝试使用HAL库开发ROTS程序&#xff0c; 第一次下载程序到芯片发现程序是运行了&#xff0c;但是不能再次下载程序&#xff08;也就是不能检测到ST-link或者DIP等接口&#xff09; 于是根据BOOT0和BOOT1…

璞睿互联教师评价系统 | 助推教师评价改革,促进教学智能化发展!

近年来&#xff0c;随着信息技术的不断发展&#xff0c;教育评价面临了一系列挑战。主要表现在教学评价空间的广泛场景化、教学评价内容的多元化以及教学评价方式的智能化。为了应对这些挑战并满足新时代教育评价改革的需求&#xff0c;璞睿互联积极探索实现教师评价智能化的途…

Fedora38下中文输入法,与切换问题

前言 首先&#xff0c;由于本人先前一直用Ununtu&#xff0c;下意识会安装googlepinyin,但是在Fedpra上其实根本没有必要这样做&#xff0c;他是支持汉语输入&#xff0c;而且做得更好。 一、安装汉语键盘输入 1、点击setting(设置) 2、找到keyboard(键盘)、Input Sourses(点…

C#__基本特性和使用

// 特性&#xff08;attribute&#xff09;: // 一种允许我们向程序集添加元数据的语言结构 // 用于保存程序结构信息的某种特殊类型的类 // 类似“批注”&#xff0c;用于解释说明 #define IsShowMessage // 宏定义&#xff0c;在开头定义&#xff0…

Python面向对象植物大战僵尸

先来一波效果图 来看看如何设计游戏架构 import sysimport pygameclass BaseSprite(pygame.sprite.Sprite):def __init__(self, name):super().__init__()self.image pygame.image.load(name)self.rect self.image.get_rect()class AnimateSprite(BaseSprite):def __init__(…

ARM体系结构学习笔记:PC寄存器

PC寄存器 32位thumb也是采用三级流水线结构,但是每个指令位2个字节因此4thumb模式读PC寄存器 mov r0, pc ; thumb mode r0 pc 4LDR R1, (aLd - 0xAC3B62C) ADD R1, PC ; "%ld\n"thumb模式使用LDR使用PC进行间接寻址 如…