当前位置: 首页 > Web前端 > vue.js

Vue源码分析-选项合并策略(二)

时间:2023-03-31 18:49:03 vue.js

选项合并策略分析(二)【选项合并策略分析(一)】()生命周期钩子函数合并策略在Vue中,生命周期是一个非常重要的知识点,我们可以在生命周期的不同阶段做不同的事情。下面我们来看看Vue生命周期钩子函数LIFECYCLE_HOOKS.forEach(hook=>{strats[hook]=mergeHook})functionmergeHook(parentVal:?Array,childVal:?Function|?Array的合并策略):?Array{/***合并策略*1.如果子类没有钩子选项,使用父类钩子选项*2.如果子类有钩子选项,如果父类class没有hook选项,使用子类Hook选项*3.当子类和父类中都有hook选项时,合并,子类的hook选项放在数组末尾。执行钩子函数时,父类的钩子函数优先于子类的执行*/constres=childVal?父母价值?parentVal.concat(childVal):Array.isArray(childVal)?childVal:[childVal]:parentVal返回res?dedupeHooks(res):res}functiondedupeHooks(hooks){constres=[]for(leti=0;i