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

      

  • 相关阅读:
    js中的call和apply方法
    前端Cookie与Session的区别
    js中的this
    Python基础语法
    Python基础安装
    Python基础字符串、列表、元组、字典
    java回调
    java内存分配与溢出
    “眉毛导航”——SiteMapPath控件的使用(ASP.NET)
    Photoshop制作雪碧图技巧
  • 原文地址:https://www.cnblogs.com/pythonClub/p/10839848.html
Copyright © 2011-2022 走看看