【UniRx】Unity的UniRx框架/插件使用经验

1. 如果想监听列表中的值而不是某个属性,考虑使用ReactiveCollection

2.使用已有List<int>初始化ReactiveCollection<int>,然后再改变原有List<int>的值(包括增加/修改),不会影响ReactiveCollection<int>的值

3. 如果是监听了ReactiveCollection的Add事件,那么只有在Add的时候才会触发监听,注册监听的时候不会像ReactiveProperty那样先触发一次

4. 【坑】含有UniRx1.7.8版本的项目打包到PC上之后,在Receiver中改变ReactiveProperty的值,检测不到,在Editor中就没问题。出问题的代码如下:

MessageBroker.Default.Receive<BlinkMessage>().Skip(1)

    .Subscribe(value =>

{

    //这里的更改会无效

        eyeOpen.Value = value.eyeOpen;

    }).AddTo(this);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容