我们假设在Dart中初始化MyComponent需要向服务器发送HttpRequest.是否有可能同步构造一个对象并推迟"实际"初始化直到响应回来?
在下面的示例中,在打印"完成"之前不会调用_init()函数.有可能解决这个问题吗?
import 'dart:async';
import 'dart:io';
class MyComponent{
MyComponent() {
_init();
}
Future _init() async {
print("init");
}
}
void main() {
var c = new MyComponent();
sleep(const Duration(seconds: 1));
print("done");
}
Run Code Online (Sandbox Code Playgroud)
输出:
done
init
Run Code Online (Sandbox Code Playgroud)