flutter EventBus

#配置文件中 先 引入

event_bus: ^2.0.0

1.封装一个类 便于直接调用
Dart 复制代码
import 'package:event_bus/event_bus.dart';
class EvenBlueUtil{

  static EventBus eventBus = EventBus();

  static EventBus eventBusUpdate = EventBus();

}

class UserLoggedInEvent {

  var user;

  UserLoggedInEvent(this.user);

}

class NewOrderEvent {

  var order;
  NewOrderEvent(this.order);

}
2.使用方法
Dart 复制代码
//可以传值也可以不传值 括号类型可以放入自己想要的信息
EvenBlueUtil.eventBus.fire(null);
3.在需要接受页面的消息进行注册

StreamSubscription? subscription;

从even可以接收传递的信息

Dart 复制代码
 @override
  void initState() {
    super.initState();
    _controller = EasyRefreshController(
    
    subscription = EvenBlueUtil.eventBus.on().listen((event) {
      
      print("消费!!!!!!");
      
     
    });
  }

  @override
  void dispose() {
    
    super.dispose();
    subscription!.cancel();
  }

//注意 离开页面会被销毁,会接收不到 但是跳转页面不会,比如跳转页面进行修改,然后返回页面是可以的,但是 点击底部菜单栏从 首页,我的来回切换是不可以的

相关推荐
天河归来14 小时前
第三方接口不稳定,如何让核心任务继续完成
java·大数据
好的佩奇14 小时前
蓝牙之通信架构
android·flutter·蓝牙
FlightYe15 小时前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
Knight_AL15 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
诸神黄昏EX16 小时前
Android fw BatteryService
android
alexhilton16 小时前
提升 Android Compose 页面的流畅度
android·kotlin·android jetpack
砚底藏山河16 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
猿究院_夏燊17 小时前
MySQL 的四种隔离级别
java·数据库·mysql
码流子17 小时前
移动收费怎么做?手持终端+App+收费中心的架构实践
java·开发语言·架构
撩得Android一次心动17 小时前
Android中Gradle网络下载超时、更改存放位置(解决方案)
android·gradle