从json赋值后打印类的属性时获取null



当我尝试为CityModel赋值并打印任何值时,我有一个类CityModel,该值为null值,现在为true值。

此处CityModel类文件

import 'package:flutter/material.dart';
class CityModel {
String cityId;
String nameAr;
CityModel({@required cityId, @required nameAr});
}

这里的提供程序函数,我试图将值分配给类城市属性

Response response = await httpService.getRequest(url);
var parsedCities = response.data['data']['cities'] as List;
if (response.statusCode == 200 && response.data['status_code'] == 201) {
parsedCities.forEach((cityObject) {
final String name = cityObject['name_ar'];
final CityModel city =
CityModel(cityId: cityObject['city_id'], nameAr: cityObject['name_ar']);
cities.add(city);
print(city.nameAr);
});

parsedCities包含城市对象列表如果我打印cityObject['name_ar],我得到了正确的值但我的问题是,当itry打印city.name_ar时,值被分配到我得到了null我不知道为什么。

试试这个?当您声明"final String name=…."时,会发生一些类型转换:

Response response = await httpService.getRequest(url);
var parsedCities = response.data['data']['cities'] as List;
if (response.statusCode == 200 && response.data['status_code'] == 201) {
parsedCities.forEach((cityObject) {
final String name = cityObject['name_ar'];
final String city = cityObject['city_id'];
print(name);
print(city);
final CityModel city =
CityModel(cityId: city, nameAr: name);
cities.add(city);
print(city.nameAr);
print(city.cityId);
});

最新更新