美文网首页
flutter eventBus的简单使用

flutter eventBus的简单使用

作者: 心旷则神怡 | 来源:发表于2022-09-15 16:24 被阅读0次

1.eventBus类

import 'package:event_bus/event_bus.dart';

///event bus
class EventBusUtils {
  static EventBus? _eventBus;

  static EventBus? getInstance() {
    _eventBus ??= EventBus();
    return _eventBus;
  }
}

2.在接受通知的界面:

//声明,后面需要销毁
StreamSubscription? event;
@override
  void initState() {
    // TODO: implement initState
    super.initState();
//通知监听
    event = EventBusUtils.getInstance()?.on().listen((event) {
      if(event.toString() == "####"){
          //do something here
      }
    });
  }
@override
  dispose(){
    super.dispose();
//销毁通知,否则可能会注册多个通知,
//不能使用destroy方法,会导致 Cannot add new events after calling close错误
    event?.cancel();
  }

3.发通知的界面

//发出通知
EventBusUtils.getInstance()?.fire("####");

有被系统的destroy困扰到,只是写了个demo没必要跟我一样,算是给初学者避坑吧

相关文章

网友评论

      本文标题:flutter eventBus的简单使用

      本文链接:https://www.haomeiwen.com/subject/sftdortx.html