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();
  }

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

相关推荐
喜欢你,还有大家1 分钟前
Nginx服务——安装与搭建
java·服务器·nginx
小玉起起5 分钟前
IntelliJ IDEA 2025.1 Java Stream Debugger 快速使用指南
java·intellij-idea·idea
农夫三拳_有点甜8 分钟前
Flutter Assets & Media
flutter
00后程序员张14 分钟前
iOS App 混淆与资源保护:iOS配置文件加密、ipa文件安全、代码与多媒体资源防护全流程指南
android·安全·ios·小程序·uni-app·cocoa·iphone
龙卷风040516 分钟前
SpringAI调用第三方模型增加自定义请求参数
java·后端
java1234_小锋16 分钟前
RabbitMQ如何实现消息的持久化?
java·rabbitmq·java-rabbitmq
tqs_123451 小时前
redis zset score的计算
java·算法
kaili2301 小时前
IDEA试用过期,无法登录,重置方法
java·intellij-idea
没有bug.的程序员1 小时前
Redis 内存优化与压缩:从原理到实战的完整指南
java·数据库·redis·内存优化·压缩内存