单个Flutter Stream和2个Stream构建器的问题

时间:2019-07-25 21:01:24

标签: flutter

所以我有Flutter 连接流。

var subscription = Connectivity().onConnectivityChanged;

还有2个页面(Tab),其中有一个 StreamBuilder 。由于某些原因,我不能将相同的流与2个构建器一起使用(第一次使用时有效,但是在我切换选项卡后,其他 StreamBuilder 不会收到任何数据)

我尝试制作2个单独的连通性流,但这没用。

StreamBuilder(
      stream: subscription,
      builder: (BuildContext cntx,
          AsyncSnapshot<ConnectivityResult> snapShot) {
        if (!snapShot.hasData) return CircularProgressIndicator();
        var result = snapShot.data;
        switch (result) {
          case ConnectivityResult.none:
            CASE WITHOUT NETWORK
          case ConnectivityResult.wifi
             CASE WITH NETWROK
          default:

        }
      }
  )

我有2个这样的标签,用于其他目的。

1 个答案:

答案 0 :(得分:0)

据我了解,您希望在订阅流时获取它发出的最后一个值。如果您再次订阅Stream,则不会发出其当前值。如果确实要这样做,则需要使用BehaviorSubject