开发者社区
社区提问意见反馈
开发者钉组织
扫描二维码
加入支付宝开发者钉组织
开发 > 框架 > 自定义组件 > 创建自定义组件 > ref 获取组件实例
贡献者
收藏
订阅更新
我的文档
设置
基础框架 1.18.0 起支持定义和获取自定义组件的对外实例。
自定义组件 ref 定义段
自定义组件可在选项中配置一个 ref 方法,该方法的返回值将作为该自定义组件的对外引用实例。配置 ref 后,支持小程序宿主、小程序插件互相获取对方的自定义组件对外实例。
javascript
复制代码
// components/index/index.js
component({
ref() {
return {
plus: () => this.handleplus()
};
},
data: {
counter: 0,
},
methods: {
handleplus() {
this.setdata({ counter: this.data.counter 1 })
},
},
});
如未定义此方法,尝试引用该自定义组件的对外实例时,同属于一个小程序宿主或者小程序插件的其他自定义组件或页面会获得该自定义组件的 this,否则获得 null
创建后 ref 回调
如果小程序项目开启了 component2,就可以在 axml 中给自定义组件定义 ref 回调。当被引用的自定义组件创建后,将自动触发该回调。对于未开启 component2 的场景请使用 my.caniuse('component2') 做兼容。
自定义组件选择方法
自定义组件可以通过 this.selectownercomponentthis.selectcomposedparentcomponent 等方法获取其创建者自定义组件、事件路径父自定义组件时,返回相关父组件的实例结果与 ref 回调相同。
假设某页面结构如下:
在各组件中调用各方法的结果是:
凯发k8官方网娱乐官方 copyright © 2022 支付宝(杭州)信息技术有限公司  | icp证浙b2-20160559
该文档对你是否有帮助?
当前页面目录
加载失败: network error
加载失败: network error
网站地图