当前位置: 首页 > 网络应用技术

扑动态状态管理GETX详细说明

时间:2023-03-05 22:34:51 网络应用技术

  作为标题,GETX包含许多功能,各种POP -UP小部件,路由管理,国际化,UTILS,状态管理等。本文仅用于核心功能的核心功能 - 国家管理的基本使用(没有分析)。对于从浅层到深处,全面的详细介绍,我还使用GetX来阅读一些文档和博客。这篇文章是从一个小角度完成的。仔细阅读后,必须没有问题。尽管作者试图尽可能直接和简单,因为本文基本上包含了GETX状态管理的大部分内容,以及大量的示例代码(主要是重复代码在柜台),可能有点长。

  有3种声明方法:

  演示使用,以计数为例:

  注意:目前,计数类型为rxint,而不是int.您可以通过count.value获得自己的int值

  当我们查看源代码时,我们可以发现当找到呼叫时,内部由包装层执行,因此为了方便开发人员。建议使用此方法声明变量。

  使用新的自定义类

  在实际项目开发中,我们通常不会像上面的UI代码和业务逻辑一样将UI代码和业务逻辑放在一起,因此体系结构,代码可读性,以后的优化和项目的维护将是致命的。它还为我们提供了一个解决方案:

  使用三种方法:

  要使用的场景:

  一般而言,大多数方案都可以使用响应变量。但是,每个响应变量都需要生成相应的getTream。如果有足够的对象,将生成大量的get流以在内存上造成巨大压力。在这种情况下,有必要考虑使用简单的状态管理。

  类继承,处理页面逻辑,

  注意:

  get.putAsync(()async {final prefs =等待sharedPreferences.getInstance();等待prefs.setint('counter',12345); return prefs;');

  注意:

  指定使用相同变量的IDBuilder,但我们只想更新getBuilder变量,您可以添加一个参数

  方案:按下操作计数器后,推送到达,返回,显示点击的数量。

  第1页:逻辑层:

  查看层:

  第二页:逻辑层:

  注意:

  包括相对完整的生命周期回调,您可以接受传输数据;如果需要将收到的数据刷新到接口,请在回调中接收数据操作。页面刷新操作是在初始加载后执行的。

  查看层:

  通过上一个实例,获得相应的事件。

  以上是同一位置的所有状态变量和操作,但是在复杂的业务场景中,这似乎非常多余,不利于以后的维护和优化。因此,我们将三个结构分开:状态(状态层),逻辑(逻辑层))和查看(接口层)。

  纤维转化:

  统一管理所有状态变量

  考试州班以操作所有变量

  上述重建后,代码结构清晰清晰。

  事件发生时,工人将帮助您触发特定的回调。

  注意:

  工人在启动控制器或类时应始终使用它,因此它应该始终是oninit,类构造函数或statefulwidget initstate(在大多数情况下,不建议采用这种方法,但不应有任何副作用)。

  使用GETX时,通常每次都使用控制器。如果每个接口必须一次实例化,则有些麻烦。使用绑定可以解决上述问题,统一初始化所有需要状态管理的控制器,并直接使用相应的使用。

  无需为单独的绑定()创建一个新的绑定类,而是直接使用构建器绑定构建器。

  就我个人而言,我不建议使用GetView和GetWidget对Nectelesswidget进行足够的使用。如何注入和释放,简单明了。

  GetView注入了控制器中,有一个命名的方法:

  最终名称=''.obs;

  最终ISLOGGED = false.obs;

  最终计数=0。obs;

  最终barance = 0.0.Obs;

  最终数=0。Obs;

  最终iTes = [] .obs;

  最终mymap = {} .obs;

  //自定义类 - 可以是任何班级

  最终用户=用户()。obs;6帮助我们实施了它。当我们只是一个控制器作为依赖项时,可以使用它。避免它,只需直接使用它即可。

  使用方法非常简单,只是从getView继承了视图层,然后传递需要注册和get.put()的控制器。

  通常,当释放视图层时,控制器将自动释放。

  注意:

  因为我们的大多数情况不需要缓存控制器,所以我们很少使用getwidget,因为它总是会捕获缓存,请谨慎使用!

  一个小型案例的摘要与先前学习的知识相结合,主要使用MVC模式,包括网络请求,模型处理和使用GetXController。

  输入新闻列表的空白页,显示加载,加载,显示页面上的数据以及加载的消失。