第一种方法:
快应用可以使用this.$app
获取到 App 相关信息,里面有一个customComponentMap
的对象可以获取到组件及页面的一些方法属性,配合console.log
调试可以取到里面的方法及调用它。
优点:可以在onInit里面调用
this.$app['customComponentMap']['2'].booklist.test()
第二种方法:
父组件使用$broadcast
触发事件
this.$broadcast('getData');
子组件在onReady
使用$on
监听'getData',后面是执行的方法
onReady() {
this.$on('getData', this.fetch)
}
第三种方法:
$child()
获取指定 id 的自定义组件的 ViewModel
用法:this.$child('xxx')获取 id 为 xxx 的 div 组件 ViewModel
需要给子组件设置id属性
缺点:不可以在onInit
里调用,可在onShow
里调用
<bookList id="bookList" />
然后在父组件使用方法调用
// 父组件
this.$child('bookList').test()