RxDart

响应式编程

Observable

@override
  void initState() {
    super.initState();

    Observable _observable =
        // Observable(Stream.fromIterable(['hello', '您好'])); // 第一种方法
        // Observable.fromFuture(Future.value('hello ~')); // 第二种方法
        // Observable.fromIterable(['hello', '您好']); // 第三种方法
        // Observable.just('hello ~'); // 第四种方法
        Observable.periodic(Duration(seconds: 3), (x) => x.toString()); // 间隔时间,每隔一段时间调用computation

    _observable.listen(print);
  }

PublishSubject

类似于Stream中的Controller

    PublishSubject _subject = PublishSubject();

    _subject.listen((data) => print('listeb 1: $data'));
    _subject.add('hello ~');
    _subject.listen((data) => print('listeb 2: ${data.toUpperCase()}'));
    _subject.add('hola');

    _subject.close();

你可能感兴趣的:(RxDart)