我尝试使用JsonDecode((解码JSON数据。当我尝试通过[]索引访问每个成员并尝试打印它们时,上面的错误会打印到我的终端上。我正在尝试构建一个费用跟踪应用程序,该应用程序使用饼图来显示用户的不同费用。
下面是一小段代码。如果需要,我可以提供更多。
var expense=费用(_dateController.text,categories.toString((,money(;
token.storage.read(key: "jwt").then((value) {
AuthService().getExpense(value).then((val) => {
print(val), // this prints the json data
mv = jsonDecode(val), // i tried to decode it
item = mv[0], //acessing each member
print(item['category']),
});
});
再一次,我得到的错误是:[错误:flutter/lib/ui/ui_start_state.cc(198(]未处理的异常:类型"Response"不是类型"String"的子类型
这是一个错误,因为api调用的返回类型是Response类型,而print函数只能打印字符串,只能尝试使用将该值转换为字符串toString方法。此外,如果您正在进行api调用,则应该调用其正文以进行打印。
例如:
token.storage.read(key: "jwt").then((value) {
AuthService().getExpense(value).then((val) => {
print(val.body.toString), // change here
});
});