gpt4 book ai didi

dart - 如何修复 http 调用中奇怪的 Dart 错误

转载 作者:IT王子 更新时间:2023-10-29 07:21:21 25 4
gpt4 key购买 nike

我在执行 http 调用并返回 json 时在运行时收到以下错误。

“_TypeError(类型‘List’不是类型‘() => void’的子类型)”

这是我的代码

   class _ForumPostsState extends State<ForumPosts> {
List data;
String categoryID = 'D64D0737-746D-4562-8C10-6445F4069A92';
Future<String> getPostsByCategory() async {
var response = await http.post(
Uri.encodeFull("http://api/ForumPostsByCategory"),
headers: {"Content-Type": "application/json",
'Accept': 'application/json',},
body: json.encode({'categoryID' : categoryID }));
this.setState(
data = json.decode(response.body)

);
print(data[1]["title"]);

return "Success!";
}

错误在这一行抛出

data = json.decode(response.body)

在调试时我注意到 JSON 在那里,它只是在 data = json.decode 调用上出错。

最佳答案

改变这个:

this.setState(
data = json.decode(response.body)

);

对此:

 this.setState(() {
data = json.decode(response.body)
}
);

更多信息在这里:https://docs.flutter.io/flutter/widgets/State/setState.html

关于dart - 如何修复 http 调用中奇怪的 Dart 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55463562/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com