gpt4 book ai didi

dart - 如何使用 rxdart 获取 Stream 中的最后一个值?

转载 作者:IT王子 更新时间:2023-10-29 07:04:36 24 4
gpt4 key购买 nike

我有一个包含字符串值的流,我想获取该字符串中的最后一个值。最好的方法是什么?

  Stream<String> get searchTextStream {
return _searchController.stream.transform(
StreamTransformer<String, String>.fromHandlers(
handleData: (value, sink) {
if (value.isEmpty || value.length < 4) {
sink.addError('please enter some text..');
} else {
sink.add(value);
}
},
),
);
}

最佳答案

从这里获取 rxDart 包 https://pub.dartlang.org/packages/rxdart .

import 'package:rxdart/rxdart.dart'; // 1. Import rxDart package.
final _searchController = BehaviorSubject<String>(); // 2. Initiate _searchController as BehaviorSubject in stead of StreamController.

String _lastValue = _searchController.value; // 3. Get the last value in the Stream.

BehaviorSubject 是一个对象 rxDart 包。它像 StreamController 一样工作,默认情况下 broadcast() 是打开的,BehaviorSubject 比 StreamController 有更多的功能。

关于dart - 如何使用 rxdart 获取 Stream<String> 中的最后一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54492000/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com