dart实现promise功能

94 阅读1分钟

方式一

Future<dynamic> promiseWapper() {
    final completer = Completer();
    MsgConnection connection = MsgConnection();
    connection.on('connect', (dynamic data) {
        return completer.complete(true);
    });
    connection.on('disconnect', (dynamic data) {
        return completer.complete(false);
    });
    return completer.future;
}

方式二

Future.value(1)

Future.delayed(const Duration(seconds: 2));

参考资料

Dart 异步编程之 Future, 实现 JS 中 Promise 的功能 - 掘金 (juejin.cn)