creator也支持双向绑定了?没错!快来围观一下。

因为项目需要,做了一个双向绑定的js脚本(bind是核心,ccBind是js组件脚本)。
只要绑定到对应的节点上就可以实现双向绑定的功能。
具体的源码公布在github: https://github.com/faace/ccBind上,简单易用。
欢迎大家点评和共同优化完善。

以下是基本功能展示,边吃瓜边观摩吧。

3赞

双向绑定是撒

java这个东西可难学吧

期待你能够不断的完善功能,以后可以出个插件

论坛不是已经有人做了吗····轮子重复了哦

是吗,我搜索了一下,好像没找到

https://forum.cocos.com/t/ui-mvvm/78821

这个大神写的呀~

看了一下,我们的使用方式不太一样,
他主要以类继承的方式去做。
而我的以独立使用的方式来实现。
不过在用途上是一样的:laughing:

什么叫双向绑定

学过前端Vue框架的都知道。比如填写网页表单时内部相应变量也随之改变(同步)。这就是双向绑定。

总觉得绑定不适合游戏,,,,,假如我想在数据更新后,动态选择是否更新显示层,,,当游戏内多个ui同时存在时,后面的ui处于失效状态(被其他ui挡住了我不想做无谓的界面更新,等界面再次激活时再更新),,,,其他方面还有就是绑定的话应该会创建一些绑定对象吧?把文本之类的放在这个绑定对象内,,

1赞

TS可以用么

双向绑定类似于定义一个对象,定义一下setter或者getter,一般是在setter里往deps里加入依赖的watchr,这些watcher的作用就是更新视图。后来vue3中用了性能更好的proxy。双向绑定的好处是尽量避免操作节点,用数据去驱动视图的更新。因为往往操作节点是一个很累很脏的活,而且没啥技术含量。双向绑定的优点就是让开发者更加关注自己的业务,不太需要去更新视图。

看你的gif演示图片, 没看出双向的操作呀?

不管怎么说,,先mark一哈。。