Logging/Printing HashMap列表<String, dynamic> dart flutter
Logging/Printing List of HashMap<String, dynamic> dart flutter
我有一个 Future,它是 async
和 return 一个 HashMap[=32 的列表=] 我想记录。我正在使用
下面是未来
Future<List<HashMap<String, dynamic>>> _fetchUsersUsingListOfHashMap() async {
try {
final response = await http.get(Uri.parse("https://jsonkeeper.com/b/XBCA"));
final decodedJson = json.decode(response.body);
final responseList = decodedJson.map<HashMap<String, dynamic>>((e) => HashMap<String, dynamic>.from(e)).toList();
return responseList;
} catch (e) {
log("FetchUsersUsingListOfHashMapException $e");
rethrow;
}
}
下面是我正在打印的 initState
@override
void initState() {
log("PrintFetchUsersUsingListOfHashMap $_fetchUsersUsingListOfHashMap()");
super.initState();
}
下面是我登录时列表的样子
[
{
"name": "Kamchatka",
"about": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Maxime mollitia,molestiae quas vel sint commodi repudiandae consequuntur voluptatum laborumnumquam blanditiis harum quisquam eius sed odit fugiat iusto fuga praesentium optio, eaque rerum! Provident similique accusantium nemo autem.",
"email": "kamchatka@mail.com",
"index": 1,
"picture": "https://thispersondoesnotexist.com/"
},
{
"name": "Valjakutse",
"about": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Maxime mollitia,molestiae quas vel sint commodi repudiandae consequuntur voluptatum laborumnumquam blanditiis harum quisquam eius sed odit fugiat iusto fuga praesentium optio, eaque rerum! Provident similique accusantium nemo autem.",
"email": "valjakutse@mail.com",
"index": 2,
"picture": "https://thispersondoesnotexist.com/"
},
{
"name": "Shipment",
"about": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Maxime mollitia,molestiae quas vel sint commodi repudiandae consequuntur voluptatum laborumnumquam blanditiis harum quisquam eius sed odit fugiat iusto fuga praesentium optio, eaque rerum! Provident similique accusantium nemo autem.",
"email": "shipment@mail.com",
"index": 3,
"picture": "https://thispersondoesnotexist.com/"
}
]
但是当我登录时,我得到了下面这样的东西
PrintFetchUsersUsingListOfHashMap Closure: () => Future<List<HashMap<String, dynamic>>> from Function '_fetchUsersUsingListOfHashMap@20327479':.()
我怎样才能打印我尝试使用下面的打印但它的return关闭
的列表
print("PrintFetchUsersUsingListOfHashMap $_fetchUsersUsingListOfHashMap()");
_fetchUsersUsingListOfHashMap 是一个未来,考虑在打印前使用 await
关键字。
举个例子:
var result = await someFutureFunction();
print('result: $result')
异步函数中的所有内容。
在你的代码中 _fetchUsersUsingListOfHashMap()
是 Future
如果你直接尝试 print
它会 return 你 Instance of Future
而不是 value
并打印您需要使用 async
和 await
调用另一个函数的值,以从 Future 函数中获取值,并在 initState
.[=20= 中调用该函数]
void printData() async {
log("PrintFetchUsersUsingListOfHashMap ${ await _fetchUsersUsingListOfHashMap()}");
}
@override
void initState() {
printData();
super.initState();
}
我有一个 Future,它是 async
和 return 一个 HashMap
下面是未来
Future<List<HashMap<String, dynamic>>> _fetchUsersUsingListOfHashMap() async {
try {
final response = await http.get(Uri.parse("https://jsonkeeper.com/b/XBCA"));
final decodedJson = json.decode(response.body);
final responseList = decodedJson.map<HashMap<String, dynamic>>((e) => HashMap<String, dynamic>.from(e)).toList();
return responseList;
} catch (e) {
log("FetchUsersUsingListOfHashMapException $e");
rethrow;
}
}
下面是我正在打印的 initState
@override
void initState() {
log("PrintFetchUsersUsingListOfHashMap $_fetchUsersUsingListOfHashMap()");
super.initState();
}
下面是我登录时列表的样子
[
{
"name": "Kamchatka",
"about": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Maxime mollitia,molestiae quas vel sint commodi repudiandae consequuntur voluptatum laborumnumquam blanditiis harum quisquam eius sed odit fugiat iusto fuga praesentium optio, eaque rerum! Provident similique accusantium nemo autem.",
"email": "kamchatka@mail.com",
"index": 1,
"picture": "https://thispersondoesnotexist.com/"
},
{
"name": "Valjakutse",
"about": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Maxime mollitia,molestiae quas vel sint commodi repudiandae consequuntur voluptatum laborumnumquam blanditiis harum quisquam eius sed odit fugiat iusto fuga praesentium optio, eaque rerum! Provident similique accusantium nemo autem.",
"email": "valjakutse@mail.com",
"index": 2,
"picture": "https://thispersondoesnotexist.com/"
},
{
"name": "Shipment",
"about": "Lorem ipsum dolor sit amet consectetur adipisicing elit. Maxime mollitia,molestiae quas vel sint commodi repudiandae consequuntur voluptatum laborumnumquam blanditiis harum quisquam eius sed odit fugiat iusto fuga praesentium optio, eaque rerum! Provident similique accusantium nemo autem.",
"email": "shipment@mail.com",
"index": 3,
"picture": "https://thispersondoesnotexist.com/"
}
]
但是当我登录时,我得到了下面这样的东西
PrintFetchUsersUsingListOfHashMap Closure: () => Future<List<HashMap<String, dynamic>>> from Function '_fetchUsersUsingListOfHashMap@20327479':.()
我怎样才能打印我尝试使用下面的打印但它的return关闭
的列表
print("PrintFetchUsersUsingListOfHashMap $_fetchUsersUsingListOfHashMap()");
_fetchUsersUsingListOfHashMap 是一个未来,考虑在打印前使用 await
关键字。
举个例子:
var result = await someFutureFunction();
print('result: $result')
异步函数中的所有内容。
在你的代码中 _fetchUsersUsingListOfHashMap()
是 Future
如果你直接尝试 print
它会 return 你 Instance of Future
而不是 value
并打印您需要使用 async
和 await
调用另一个函数的值,以从 Future 函数中获取值,并在 initState
.[=20= 中调用该函数]
void printData() async {
log("PrintFetchUsersUsingListOfHashMap ${ await _fetchUsersUsingListOfHashMap()}");
}
@override
void initState() {
printData();
super.initState();
}