我有一个主题对象
class Subject {
String subjectName;
int pages;
int fullMarks;
Future<Map<String, dynamic>> toJson() async {
return {
'name': name,
'pages': pages,
'fullMarks': fullMarks,
}
}
}
和学生对象
class Student {
String name;
int rank;
Subject sub;
Future<Map<String, dynamic>> toJson() async {
return {
'name': name,
'rank': rank,
'subject': sub.toJson(),
}
}
}
我想在 POST 请求中发送这个学生对象。
我做到了:这里的 student 是 Student 类的对象。
var data = jsonEncode(await student.toJson());
但在数据主题值为空。 有谁知道为什么??
答案 0 :(得分:2)
您需要在 await
之前添加 sub.toJson()
为
'subject': await sub.toJson()
await
将允许 future 在等待结果时完成,否则将立即返回 future 对象,这是不希望的。