GetX 是 Flutter 上的一个轻量且强大的解决方案:高性能的状态管理、智能的依赖注入和便捷的路由管理。
GetX 有 3 个基本原则:
GetX 并不臃肿,却很轻量。如果你只使用状态管理,只有状态管理模块会被编译,其他没用到的东西都不会被编译到你的代码中。它拥有众多的功能,但这些功能都在独立的容器中,只有在使用后才会启动。
Getx有一个庞大的生态系统,能够在Android、iOS、Web、Mac、Linux、Windows和你的服务器上用同样的代码运行。 通过 Get Server 可以在你的后端完全重用你在前端写的代码。
此外,通过Get CLI,无论是在服务器上还是在前端,整个开发过程都可以完全自动化。
为了进一步提高生产效率,还提供了一些插件:
GetX的优势 1.内部实现了路由管理,相比目前主流的fluro框架更轻量,并且路由跳转无需上下文对象,支持自定义路由中间件和动态路由传参等功能。 2.提供两种简单灵活的实现状态管理的方式。 3.它内部实现了依赖注入,可以快速的获取到某个状态管理器(GetxController)。 4.在实际开发中,通过上述三点配合使用,可以将界面、业务、路由、依赖等进行分离。在做到UI刷新及跨界面交互的同时,又
一、状态管理、Flutter Getx介绍 通俗的讲: 当我们想在多个页面(组件/Widget)之间共享状态(数据),或者一个页面(组件/Widget)中的多个子组件之间共享状态(数据),这个时候我们就可以用Flutter中的状态管理来管理统一的状态(数据),实现不同组件之间的传值和数据共享。现在Flutter的状态管理方案很多,redux、bloc、state、provider、Getx。pro
这个函数用于获取当前 x 坐标。 int getx(); 参数 无 返回值 返回当前 x 坐标。 示例 无
使用篇 简介 依赖管理 路由管理 状态管理 主题配置 多语言配置 离线缓存 网络请求 原理篇 Flutter 从源码看Getx的依赖原理 一、简介 Obx:响应式状态管理,当数据源变化时,将自动执行刷新组件的方法 GetX:响应式状态管理,当数据源变化时,将自动执行刷新组件的方法 GetBuilder:简单状态管理,当数据源变化时,需要手动执行刷新组件的方法,此状态管理器内部实际上是对Statef
使用篇 简介 依赖管理 路由管理 状态管理 主题配置 多语言配置 离线缓存 网络请求 原理篇 从源码看Getx的依赖原理 一、Get的依赖注入源码解析 1、 Get.put 每次我们存一个对象的时候都会使用Get.put()。要用的时候都是Get.find()。 那么Getx是如何将我们需要的对象保存起来?而且还可以跨页面共享数据的呢? 接下来,带着疑问去源码寻找我们需要的答案。 首先我们来看一看
GetxController介绍 在实际的项目开发过程中,我们不可能把UI代码、业务逻辑都放在一起处理,这样对项目的架构、代码的可读性、后期的维护将会是致命的,好在GetX为我们提供了GetxController,GetxController主要的作用是用于UI代码与业务逻辑分离开来。 GetxController三种使用方式 这里主要讲解使用GetxController动态获取数据的三种方式以及
一、前言 在Flutter众多关于状态管理的开源框架中,GetX 无疑是非常闪亮的那个“星”,其功能非常丰富、强大,这是GetX 的最大的优点,也是它隐形的缺点,即如果不对GetX 的源码(原理)有较为深入的理解,很容易会在使用时出现一些错误。 二、问题 我们都知道,在使用GetX 的时候,通常会将业务处理放在Controller中,然后在View中初始化Controller,进而将Control
来自服务器的数据以及是否挂起或导致错误 UI状态如切换,警报和错误消息 自定义主题,凭据和本地化 许多其他类型的状态 Redux using ng2-redux Angular Services and RxJS(推荐)
管理应用程序状态是个难题。您需要在多个后端,Web workers和UI组件之间进行协调。 像Redux和Flux这样的模式旨在通过使这种协调更加明确来解决这个问题。在本文中,我将展示如何使用RxJS在几行代码中实现类似的模式。然后我将展示如何使用这种模式来实现一个简单的Angular 2应用。 在谈论架构模式时,我喜欢从描述其核心属性开始。你可以写在餐巾背上的东西。The devil, of c
建议使用基于redux封装出来的rematch, anujs也自带了这个框架。 rematch的官网 https://github.com/rematch/rematch resolve: { alias: { react: "anujs", "react-dom": "anujs", rematch: "anujs/dist/Rematch.js
属性是用于标识您的应用程序的操作的唯一字符串。 使用lisp-case(例如)是一个常见的惯例,但是只要在整个项目中是一致的,您可以随意使用任何写法。 示例: 为了简化操作创建,您可以创建一个工厂函数来处理应用程序中重复的部分: 由此产生的创建操作变得更加简洁和干净:
Mpx 参考 vuex 设计实现了外部状态管理系统(store),其中的概念与 api 与 vuex 保持一致,为了更好地支持状态模块管理和跨团队合作场景,我们提出多实例 store 作为 vuex 中 modules 的替代方案,该方案在模块拆分及合并上的灵活性远高于 modules。 介绍 Store 是一个全局状态管理容器,能够轻松实现复杂场景下的组件通信需求,store 与简单的全局状态对
类 Flux 状态管理的官方实现 由于多个状态分散的跨越在许多组件和交互间各个角落,大型应用复杂度也经常逐渐增长。为了解决这个问题,Vue 提供 vuex: 我们有受到 Elm 启发的状态管理库。vuex 甚至集成到 vue-devtools,无需配置即可访问时光旅行。 React 的开发者请参考以下信息 如果你是来自 React 的开发者,你可能会对 vuex 和 redux 间的差异表示关注,
Redux应用程序中的Reducer不应该改变state,而是返回一个副本,并且无副作用。 这鼓励你把你的应用程序想象成从一系列事件中“计算”的UI。 让我们来看看一个简单的计数器reducer。 我们可以看到,我们正在传递一个初始状态和一个动作。为了处理每个动作,我们设置了一个switch语句。而不是每个reducer需要显式订阅分发器,每个动作都会传递到每个reducer,它处理它感兴趣的动作
超文本传输协议(HTTP)是一种无状态协议。 当客户端与服务器断开连接时,ASP.NET引擎会丢弃页面对象。 这样,每个Web应用程序都可以向上扩展以同时处理大量请求,而不会耗尽服务器内存。 但是,需要一些技术来在请求之间存储信息并在需要时检索它。 此信息,即当前会话中当前用户的所有控件和变量的当前值称为State。 ASP.NET管理四种类型的状态: 查看状态 控制状态 会话状态 申请国 查