vue监听子组件的声明周期

如何在父组件里面监听【第三方子组件】的生命周期

场景

复制代码
<template>
<button     @click="a=1">1</button>
<button     @click="a=2">2</button>
<el-input type="date" v-model="b" v-if="a==1"/>
</template>

我们想只有a等于1的时候才携带字段b给后端,如果我们a为1时候选择了日期,那变量b就有值了,在切换变量a为2的时候,虽然input不显示,但是变了b依旧就有值,实际上我们不需要b变量的值了的

点击button时候坐下判断就好,为2的时候就移除b的值,那如果input的显示背多个变量控制而不是单纯a变量呢,那就会在其他按钮点击的时候继续重置b的值

问题

会导致多个地方重置input关联的b的变量再多个地方被重置

期待

如果可以监听到input背销毁的生命周期就好了

vue其实给我们准备好了这样的一个事件的,只是文档上面没有提供(存疑🤨)

子组件生命周期事件

文档VNode Lifecycle Events | Vue 3 Migration Guide

vue2

复制代码
<任意组件
      @hook:mounted="onMounted"
      @hook:updated="onUpdated"
      @hook:beforeDestroy="onBeforeDestroy"
    ></任意组件>

vue3

@hook改为@vue

且生命周期钩子名字要按照vue3的名字来

复制代码
<任意组件
      @vue:mounted="onMounted"
      @vue:beforeUnmount ="onBeforeUnmount"
      @vue:unmounted ="onUnmounted"
    ></任意组件>
相关推荐
灵感__idea5 小时前
JavaScript高级程序设计(第5版):好的编程就是掌控感
前端·javascript·程序员
烛阴6 小时前
Mix
前端·webgl
代码续发6 小时前
前端组件梳理
前端
试图让你心动7 小时前
原生input添加删除图标类似vue里面移入显示删除[jquery]
前端·vue.js·jquery
_Kayo_7 小时前
VUE2 学习笔记6 vue数据监测原理
vue.js·笔记·学习
陈不知代码7 小时前
uniapp创建vue3+ts+pinia+sass项目
前端·uni-app·sass
小王码农记7 小时前
sass中@mixin与 @include
前端·sass
陈琦鹏7 小时前
轻松管理 WebSocket 连接!easy-websocket-client
前端·vue.js·websocket
hui函数8 小时前
掌握JavaScript函数封装与作用域
前端·javascript
行板Andante8 小时前
前端设计中如何在鼠标悬浮时同步修改块内样式
前端