希望微信官方开放一个API:提供子组件获取父组件的实例对象

发布于 8 年前作者 xiulanyang11216 次浏览最后编辑 8 年前来自 issues

在代码当中,模拟双向绑定,page调取组件可以使用

let pages = getCurrentPages();

let page = pages[pages.length - 1];

    page.setData({

    name:‘simple’

})

但是组件里调取组件就不行了,

使用this.triggerEvent()太闹心了,封装组件不能模拟双向绑定,求官方看看是否可以这一块做出更好的方案。

6 回复
yanggang
yanggang1 楼6 年前

大家都是写 triggerEvent()方法去让页面或者组件赋值改变值么?

是不是很繁琐,原本高质量的组件还让使用组件的来处理值。。。。

如果能有一个 获取父组件的实例 用 父组件实例去

setData 那岂不是很好

renjuan
renjuan2 楼6 年前

我会遵守法律的程序了

lintao
lintao3 楼6 年前

我们一直也在考虑这里应该怎样设计比较合理。

我们有种考虑是直接给个接口 selectParentComponent 来取父组件,但是感觉有点违背依赖关系,跨插件的时候也有和 selectComponent 一样的问题。

或者考虑直接给个双向绑定机制。

又或者做个类似 mobx 绑定机制来解决。

后两者应该很快会做好。第一个我们再考虑下。

gang94
gang944 楼6 年前

子组件提供一个getParent方法

chao24
chao245 楼6 年前

把父实例传递给子组件

juan29
juan296 楼6 年前

为什么不让父组件向子组件传递 function 呢……?