Del*_*ain 1 api null response dart flutter
我正在调用具有混合值的 api。有些值返回 0,有些值返回 int。但是当我调用该 api 时,出现以下错误:
The getter 'actualTotalFee' was called on null.
Receiver: null
Tried calling: actualTotalFee
Run Code Online (Sandbox Code Playgroud)
我的API响应是:
"summary": {
"said_fee": 0,
"nos": 11,
"currentPayable": 0,
"eximp-sem": 1,
"sum_of_tution_fee": 173875,
"common_scholarship": 0,
"actual_total_fee": 0,
"special_scholarship": 10000,
"per_semester_fee": 0,
"per_semester_fee_without_scholarship": 0,
"total_paid": 190000,
"total_current_due": -200000,
"Due_Up_to_April": -200000,
"total_due": -200000
}
Run Code Online (Sandbox Code Playgroud)
我的api调用方法:
// Getting Accounts Summery
Future<AccountSummery> fetchAccountSummery(int userId) async {
final url =
Api.baseUrl + 'student_account_info_summary/$userId?token=$authToken';
try {
final response = await get(Uri.encodeFull(url));
final loadedItem = json.decode(response.body);
if (response.statusCode == 200) {
return AccountSummery.fromJson(loadedItem['summary']);
} else {
throw Exception('Error in getting account summery');
}
} catch (error) {
throw error;
}
}
Run Code Online (Sandbox Code Playgroud)
我的模型调用:
class AccountSummery {
final int actualTotalFee;
final int specialScholarship;
final int perSemesterWithoutScholarship;
final int perSemesterFee;
final int totalPaid;
final double totalCurrentDue;
final int totalDue;
AccountSummery(
{
this.actualTotalFee,
this.specialScholarship,
this.perSemesterWithoutScholarship,
this.perSemesterFee,
this.totalPaid,
this.totalCurrentDue,
this.totalDue
});
factory AccountSummery.fromJson(Map<String, dynamic> json) {
return AccountSummery(
actualTotalFee: json['actual_total_fee'],
specialScholarship: json['special_scholarship'],
perSemesterWithoutScholarship: json['per_semester_fee_without_scholarship'],
perSemesterFee: json['per_semester_fee'],
totalPaid: json['total_paid'],
totalCurrentDue: json['total_current_due'],
totalDue: json['total_due'],
);
}
}
Run Code Online (Sandbox Code Playgroud)
由于“actual_total_fee”、“per_semester_fee”等某些响应返回 0 值,我的 api 响应方法失败。
有什么方法可以运行 api 方法或为我的模型类设置 0 值吗?
在你的模型中
actualTotalFee: json['actual_total_fee'] ?? 0,
Run Code Online (Sandbox Code Playgroud)
在你的通话中
AccountSummeryObj?.actualTotalFee ?? 0
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4170 次 |
最近记录: |