flutter实现promise中resolve功能

BehaviorSubject openCameraController = BehaviorSubject();
    BridgeChannel _openCamera() {
        print('- - - - - - - - - - - - - - - - - - > _openCamera() ');
        return BridgeChannel(
            name: 'openCamera',
            onBridgeHandler: (dataFromJs) async {
                print('- - - - - - - - - - - - - - - - - - > _openCamera() 发送事件 '+dataFromJs);
                EventBus().post(OpenCameraEvent(dataFromJs));
                print('- - - - - - - - - - - - - - - - - -222 > openCameraController.listen2  ');
                return await doSome();
            }
        );
    }

    Future<String> doSome() async {
        var a = new Future(() => null);
        openCameraController.listen((resul) {
            print('- - - - - - - - - - - - - - - - - - > openCameraController.listen '+resul);
            //return result = resul;
            //call('dart2Js', resul);
            a.then((_) => resul);
        });
        return a;
    }

猜你喜欢

转载自www.cnblogs.com/Oldz/p/11132522.html