CSDN|不来看看这些 VUE 的生命周期钩子函数? | 原力计划( 三 )
本文插图
注:组件进行销毁的时候,是先销毁的是父组件,然后销毁子组件 。Activated被 keep-alive 缓存的组件激活时调用 。该钩子在服务器端渲染期间不被调用 。Deactivated被 keep-alive 缓存的组件停用时调用 。该钩子在服务器端渲染期间不被调用 。例:activated与deactivated执行演示:<div id="box"> <keep-alive> <component :is="cName"></component> </keep-alive> <button @click="cName='One'">change1</button> <button @click="cName='Two'">change2</button></div><script> var One ={ template:`<div>one component</div>`, activated{ console.log("activated"); }, deactivated{ console.log("deactivated"); } } var Two ={ template:`<div>two component</div>`, } new Vue({ el:"#box", components:{ One,Two }, data:{ cName:'One' //存组件的名字 } })</script>结果:
本文插图
ErrorCaptured类型:(err: Error, vm: Component, info: string) => ?boolean 。当捕获一个来自子孙组件的错误时被调用 。 此钩子会收到三个参数:错误对象、发生错误的组件实例以及一个包含错误来源信息的字符串 。 此钩子可以返回 false 以阻止该错误继续向上传播 。我们可以在此钩子中修改组件的状态 。 因此在捕获错误时 , 在模板或渲染函数中有一个条件判断来绕过其它内容就很重要;不然该组件可能会进入一个无限的渲染循环 。
- 默认情况下 , 如果全局的 config.errorHandler 被定义 , 所有的错误仍会发送它 , 因此这些错误仍然会向单一的分析服务的地方进行汇报 。
- 如果一个组件的继承或父级从属链路中存在多个 errorCaptured 钩子 , 则它们将会被相同的错误逐个唤起 。
- 如果此 errorCaptured 钩子自身抛出了一个错误 , 则这个新错误和原本被捕获的错误都会发送给全局的config.errorHandler 。
- 一个 errorCaptured 钩子能够返回 false以阻止错误继续向上传播 。 本质上是说“这个错误已经被搞定了且应该被忽略” 。 它会阻止其它任何会被这个错误唤起的 errorCaptured钩子和全局的 config.errorHandler 。
推荐阅读
- 群众网|微信中6个设置不关闭,个人信息或被“窃取”,看看你关了吗?
- CSDN|由 Apache 说开,中国开源项目已经走向世界!
- 情况|担心自己被“监听”?快看看手机有没有出现这3种情况,赶快自查
- 刘付罗金|随便看看 视频号又多一个新入口 微信再更新功能
- CSDN|软件对于英特尔意味着什么?
- 声音|监控系统接入音频摄像机没声音,看看是不是这几点没设置
- 电脑使用技巧|监控系统接入音频摄像机没声音,看看是不是这几点没设置
- CSDN|中国首家苹果零售店重开业,苹果CEO库克发文揭幕;“携号转网”服务用户破千万;GitHub 完成北极源代码存档|极客头条
- 手机使用技巧|这6种信号,只要出现2种以上说明你手机中病毒了,抓紧去看看!
- 青年|女生暗恋的表现在哪些方面,我们看看下面的看法,看看你暗恋的女生是不是也在暗恋你
