在uniapp中components自定义组件是没有onshow onload等uniapp提供的组件生命周期函数。components组件是我们程序员自定义的组件,它的生命周期钩子与vue组件周期钩子一样。当我们的需求是uniapp组件onshow时,调用自定义子组件的一个函数或者方法时,onShow函数触发uni.$emit( '事件名' ),自定义组件中created函数中调用uni.$on( 'emit传入的事件名' ,( 形参 )=>{ 调用methods中的函数触发更新视图 })
父组件:
onShow() {
uni.$emit('update')
},
子组件( 通过$on触发父组件定义的事件,第二个参数回调函数可以接收参数或者调用当前组件的方法函数 ):
created(){
uni.$on('update',(data)=>{
//子组件中methods中定义的函数
this.getUser()
})
},