class NetworkRepository {
Future<String> getRequest(String url) async {
var dio = Dio();
Response response = await dio.get(url);
return json.encode(response.data);
}
dynamic requestInterceptor(RequestOptions options) async {
return options;
}
}
我正在小部件中呼叫getRequest(String url)
,
Future<String> getProjects() async {
await NetworkRepository().getRequest(projects).then((onValue) {
var dataConvertedToJSON = json.decode(onValue);
AndroidProjectModel model = AndroidProjectModel.fromJson(dataConvertedToJSON);
print(model.toString()); //DOES NOT PRINT ANYTHING
});
return 'success';
}
我将dataConvertedToJSON
传递到AndroidProjectModel.fromJson(dataConvertedToJSON)
中,它不会重新运行任何内容。
我正在使用this tool将JSON转换为模型。
答案 0 :(得分:0)
await
和then
子句可能无法一起使用。尝试以下类似的方法。
var jsonResponse = await NetworkRepository().getRequest(projects);
var dataConvertedToJSON = json.decode(onValue);
AndroidProjectModel model = AndroidProjectModel.fromJson(dataConvertedToJSON);
print(model.toString());
OR
删除await
,仅使用then
处理程序。
答案 1 :(得分:0)
使用 try..catch ,可能有用
[MAKE] Generating cache.mk
[LD] Linking /Users/laxmi/grpc/libs/opt/libaddress_sorting.dylib
make: “/Users/laxmi/Library/Android/sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/darwin-x86_64/bin/aarch64-linux-android-ld”: No such file or directory
make: *** [/Users/laxmi/grpc/libs/opt/libaddress_sorting.dylib] Error 1