vlambda博客
学习文章列表

UniRx—简洁优雅的响应式编程框架

UniRx

UniRx—简洁优雅的响应式编程框架


UniRx—简洁优雅的响应式编程框架

UniRx—简洁优雅的响应式编程框架

简介

响应式编程,参考dotween。简易了很多功能实现,并有着非常棒的异步支持。开源免费,高效简洁。



简洁优雅如何体现?

比如,实现一个“只处理第一次鼠标点击事件”这个功能,使用 UniRx 实现如下:

Observable.EveryUpdate().Where(_ => Input.GetMouseButtonUp(0)).First().Subscribe(_ => { // do something });

代码做的事情很简单:

  1. 开启一个 Update 的事件监听。

  2. 每次 Update 事件被调用时,进行鼠标是否抬起的判断。

  3. 如果判断通过,则进行计数,并且只获取第一次点击事件。

  4. 订阅/处理事件

    ... ...


UniRx(Unity的响应式编程框架)是.Net响应式编程框架的重新实现版本。官方的Rx的实现方式是非常棒的。但是,在Unity中使用会有一些问题;在IOS的IL2CPP中有兼容性的问题。UniRx修复这些问题,并针对Unity添加了一些特别的工具。支持的平台包括PC/Mac/Android/iOS/WebGL/WindowsStore/等等。

UniRx AssetStore下载:

http://u3d.as/content/neuecc/uni-rx-reactive-extensions-for-unity/7tT

使用说明

参见:

UniRx 官方文档翻译

https://blog.csdn.net/JianZuoGuang/article/details/101937132

UniRx 精讲 2020教程

https://xiaozhuanlan.com/unirx?rel=9045567780




UniRx—简洁优雅的响应式编程框架