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');
      }
    

      

  • 相关阅读:
    React学习资料+css进阶资料总结
    事件委托
    iframe
    js识别安卓和ios及pc端,以及解决微信的屏蔽
    函数声明与函数表达式
    利用tween,使用原生js实现模块回弹动画效果
    点击按钮 弹出视频 并有遮罩层效果
    居中对齐的一些总结
    jasperreport报表导出excel锁定行和列
    intellij idea14注册码生成器
  • 原文地址:https://www.cnblogs.com/pythonClub/p/10839848.html
Copyright © 2011-2022 走看看