Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dart 非平凡构造函数能否调用未来的返回函数(如何或替代)_Dart - Fatal编程技术网

Dart 非平凡构造函数能否调用未来的返回函数(如何或替代)

Dart 非平凡构造函数能否调用未来的返回函数(如何或替代),dart,Dart,假设你有: class Schema { Schema.fromText(String jsonString) { ... } } 在这个构造函数中,假设jsonString中提供了一个用于下载数据的URL,并且读取URL的唯一API是返回未来的API。此外,假设模式仅在URL数据被读取和处理时才是有效对象。甚至可以实现…?您想要做的事情在标准构造函数中是不可能的 相反,请尝试一个静态方法,该方法返回一个包装在将来的新实例 比如: 类模式{ Schema.\u fr

假设你有:

class Schema {
    Schema.fromText(String jsonString) {
      ...
    }
}

在这个构造函数中,假设jsonString中提供了一个用于下载数据的URL,并且读取URL的唯一API是返回未来的API。此外,假设模式仅在URL数据被读取和处理时才是有效对象。甚至可以实现…?

您想要做的事情在标准构造函数中是不可能的

相反,请尝试一个静态方法,该方法返回一个包装在将来的新实例

比如:

类模式{
Schema.\u fromApi(字符串apiResults){…}
静态未来构建(字符串jsonString){
返回getContentsOfUrl(jsonString['url'])
。然后((内容)=>新模式。_fromApi(内容));
}
}