【Vue】生命周期函数在什么时候会被调用

news/2024/7/10 1:48:42 标签: vue

生命周期函数:就是 Vue实例在某一个时间点自动执行的函数。

1、activated函数

被 keep-alive 缓存的组件激活时调用。该钩子在服务器端渲染期间不被调用。

应用实例:提高效率,避免接口的重复调用,可以将组件包裹在<keep-alive>内,包裹起的内容会被缓存起来,不会再重新请求接口。

  <div id="app">
    <keep-alive>
      <router-view/>
    </keep-alive>
  </div>

但是,如果想要改变被缓存数据时,怎么办呢,这就用到了 activated函数。

  activated () {
    if (this.lastCity !== this.city) {
      this.lastCity = this.city
      this.getdata() //重新请求接口
    }
  },

 2、beforeUpdate/updated函数

beforeUpdate函数会在数据更新时调用,发生在虚拟 DOM 打补丁之前。这里适合在更新之前访问现有的 DOM,比如手动移除已添加的事件监听器。

该钩子在服务器端渲染期间不被调用,因为只有初次渲染会在服务端进行。

也就是说:Vue实例 $data 改变时,才会执行

updated函数由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子。

注意 updated 不会保证所有的子组件也都一起被重绘。如果你希望等到整个视图都重绘完毕,可以在 updated 里使用 vm.$nextTick。

 

 


http://www.niftyadmin.cn/n/497605.html

相关文章

android获取设备的唯一编号,获取Android唯一设备号

public class SystemPropertiesInvoke {private static final String TAG “SystemPropertiesInvoke”;private static Method getLongMethod null;private static Method getBooleanMethod null;public static long getLong(final String key, final long def) {try {if (g…

【数据结构与算法】复杂度分析

一、数据结构和算法解决的是“快”和“省”的问题&#xff0c;即如何让代码运行得更快&#xff0c;如何更省存储空间。所以「执行效率」是算法一个非常重要的考量指标&#xff0c;如何衡量编写的算法代码的执行效率&#xff1f;时间和空间复杂度分析。 换句话说&#xff1a;时间…

【Vue】动态路由的配置

通过 /detail/:id 的形式&#xff0c;可以创建一个动态路由。 export default new Router({routes: [{path: /detail/:id,name: Detail,component: Detail}] })

魅族Android10内测招募答案,魅族flyme9内测招募答案,魅族16系列flyme9内测招募题目答案免费分享预约 v1.0-手游汇...

魅族flyme9内测招募答案&#xff0c;今天开启的内测&#xff0c;对于新用户们需要完成答题申请&#xff0c;小编在这里为大家更新一些有用的题目和答案&#xff0c;对于您的申请也是有一定帮助的哦&#xff0c;希望您可以获得内测资格。flyme9特色&#xff1a;1.这个版本的更新…

【Safari】如何利用Safari浏览器,调试移动端的页面bug

作为一名前端开发&#xff0c;比较苦恼的是&#xff0c;在pc端用手机模拟器测试没有问题&#xff0c;在手机上却死活不行。遇到这种问题&#xff0c;如何是好&#xff1f; Safari设置 Safari偏好设置 -> 高级&#xff0c;勾选“在菜单中显示开发菜单”&#xff0c; iPhone设…

signature=26c5b2f6d29f4b312a83306be08132e1,modbus 查表法

CRC简单函数如下&#xff1a;unsigned short CRC16(puchMsg, usDataLen)unsigned char *puchMsg ; /* 要进行CRC校验的消息 */unsigned short usDataLen ; /* 消息中字节数 */{unsigned char uchCRCHi 0xFF ; /* 高CRC字节初始化 */unsigned char uchCRCLo 0xFF ; /* 低CRC 字…

【input】如何设置input标签不可编辑(亲测好使)

<input type"text" placeholder"请输入" readonly"readonly" unselectable"on"/> 提示&#xff1a;设置了 input 不显示光标&#xff0c;但当点击 input 时&#xff0c;仍会执行 focus( ) 方法。

【vconsole】H5页面控制台,也被称为移动端调试神器

github地址 &#xff1a;GitHub - Tencent/vConsole: A lightweight, extendable front-end developer tool for mobile web page. vconsole 是腾讯开发的一款针对手机网页的前端开发者调试插件&#xff0c;可以直接在手机上查看 console 日志、网络请求、页面 element 结构、C…