当前位置: 首页 > news >正文

Getx:GetxController依赖管理02,Binding绑定全局控制器(懒加载Controller)

在使用GetX 状态管理器的时候,如果每个页面都手动实例化一个控制器就太麻烦了,
Binding 的作用就是所有需要进行状态管理的控制器进行统一初始化

创建全局控制器Binding

import 'package:get/get.dart';
import '../controllers/counter.dart'; // 同上一篇内容一样
import '../controllers/list.dart'; // 同上一篇内容一样
class AllControllerBinding implements Bindings{@overridevoid dependencies() {// lazyPut:懒加载初始化,用到这个控制器的时候,会自动初始化Get.lazyPut(()=> CountController());Get.lazyPut(()=> ListController());}}

main 入口文件配置全局控制器

import './binding/binding.dart';return GetMaterialApp(initialBinding: AllControllerBinding(), // 表示全局绑定AllControllerBindin
);

用到控制器的页面

// 直接获取,无需创建
ListController controller = Get.find();

这样做的好处是,比如我们在A页面创建的控制器,但是用户先点击的B页面,B页面可能是直接获取这个控制器,就会出现报错,
直接在全局懒加载创建控制器,这样当使用这个控制器的时候,直接获取就行。

http://www.lryc.cn/news/487436.html

相关文章:

  • leetcode 找不同
  • 2025 - 生信信息学 - GEO数据分析 - RF分析(随机森林)
  • Matlab深度学习(四)——AlexNet卷积神经网络
  • etcd defrag
  • golang语言整合jwt+gin框架实现token
  • 数据治理、数据素养和数据质量管理:文献综述
  • 【Linux】用户和用户组管理
  • 游戏引擎学习第16天
  • 如何通过对敏捷实践的调整,帮助远程团队提升研发效能?
  • Ubuntu Linux使用前准备动作 配置SSH
  • 疫情下的图书馆管理系统:Spring Boot技术
  • vue3完整安装并创建项目
  • 【Linux】Linux入门实操——进程管理(重点)
  • Linux-Apache
  • 高危,Laravel参数注入漏洞安全风险通告
  • 【Qt】使用QString的toLocal8Bit()导致的问题
  • Android上运行Opencv(TODO)
  • 动态IP黑白名单过滤的设计与实现(上篇设计思想)
  • LeetCode 力扣 热题 100道(五)最长回文子串(C++)
  • Docker--Docker Registry(镜像仓库)
  • maven手动上传jar到私服仓库:mvn deploy:deploy-file命令
  • 【机器学习】机器学习中用到的高等数学知识-1.线性代数 (Linear Algebra)
  • 无插件H5播放器EasyPlayer.js网页web无插件播放器选择全屏时,视频区域并没有全屏问题的解决方案
  • Idea中创建和联系MySQL等数据库
  • 【pytest】pytest注解使用指南
  • 在Unity中使用Epplus写Excel
  • 初识算法 · 模拟(2)
  • 【Java面试】—— 创建线程池的两种方式(执行流程、拒绝策略)(详细)
  • Docker在微服务架构中的应用
  • 苹果ASA归因对接以及API接入