zoukankan      html  css  js  c++  java
  • stream

    自带的:

    单一

    class DataBloc {
      StreamController dataBloc = StreamController();
      StreamSink get dataSink => dataBloc.sink;
    }
    

      

    addData(){
        dataBloc.dataSink.add('addsfdb');
      }
    

      



    StreamBuilder(
                stream: dataBloc.dataBloc.stream,
                builder: (context, snapshot){
                  if(snapshot.hasData){
                    return Text('${snapshot.data}');
                  }else{
                    return Text('first');
                  }
                },
              ),
    

      

    多次

    class DataBloc {
      StreamController dataBloc;
      DataBloc(){
        dataBloc = StreamController.broadcast();
      }
      Stream get dataStream => dataBloc.stream;
      StreamSink get dataSink => dataBloc.sink;
    }
    

      

    StreamBuilder(
                stream: dataBloc.dataStream,
                builder: (context, snapshot){
                  if(snapshot.hasData){
                    print('this first ${snapshot.data}');
                    return Text('${snapshot.data}');
                  }else{
                    return Text('first');
                  }
                },
              ),
    
              StreamBuilder(
                stream: dataBloc.dataStream,
                builder: (context, snapshot){
                  if(snapshot.hasData){
                    print('this seconds. ${snapshot.data}');
                    return Text('${snapshot.data}');
                  }else{
                    return Text('second');
                  }
                },
              ),
    

      

     addData(){
        dataBloc.dataSink.add('addsfdb');
      }
    

      

    rxdart:

    class DataBloc {
      PublishSubject dataBloc = PublishSubject();
    }
    

      

    StreamBuilder(
                stream: dataBloc.dataBloc.stream,
                builder: (context, snapshot){
                  if(snapshot.hasData){
                    print('this first ${snapshot.data}');
                    return Text('${snapshot.data}');
                  }else{
                    return Text('first');
                  }
                },
              ),
    
              StreamBuilder(
                stream: dataBloc.dataBloc.stream,
                builder: (context, snapshot){
                  if(snapshot.hasData){
                    print('this seconds. ${snapshot.data}');
                    return Text('${snapshot.data}');
                  }else{
                    return Text('second');
                  }
                },
              ),
    

      

    addData(){
        dataBloc.dataBloc.add('xyz');
      }
    

      

  • 相关阅读:
    centos7物理机a start job is running for dev-mapper-centosx2dhome.device
    jenkins pipeline流水线
    nginx 加载慢 负载均衡不均衡
    山田预发环境发布脚本
    prometheus 监控容器
    maven私服安装使用
    日志清理
    ERROR 1046 (3D000) at line 1: No database selected
    网络工程学习经典书籍推荐
    每日一句
  • 原文地址:https://www.cnblogs.com/pythonClub/p/10839848.html
Copyright © 2011-2022 走看看