gpt4 book ai didi

flutter - 将Map 数据转换为类数据

转载 作者:行者123 更新时间:2023-12-03 03:39:54 25 4
gpt4 key购买 nike

在我的应用程序和一个屏幕中,我将带有Map<String,dynamic>的类数据传递到另一个屏幕,

onTap: (){
Map<String,dynamic> dataMap = Map<String,dynamic>();
dataMap['id']=tickets[index].id;
dataMap['subject']=tickets[index].subject;
dataMap['createdAt']=tickets[index].createdAt;
dataMap['ticketNumber']=tickets[index].ticketNumber;

Navigation.router.navigateTo(context, 'showTicketReplies/$dataMap',transition: TransitionType.fadeIn);
},

在另一个屏幕中,我可以使用以下结构获取此数据:
widget.ticketData = {_InternalLinkedHashMap} size = 1
0 = {map entry} "id" -> [_GrowableList]
key = "id"
value = {_GrowableList} size = 1
0 = "{
id: 1,
subject: hello world,
createdAt: 2019-01-01,
ticketNumber: 3381
}"

现在我想用这个数据做简单的class变量:
TicketsTableData get _ticket => TicketsTableData.fromJson(widget.ticketData.values.toList()[0][0]);

widget.ticketData.values.toList()[0][0]的值是:
{id: 1, subject: hello world, createdAt:2019-01-01, ticketNumber: 3381}

但是当我尝试它时,出现此错误:
type 'String' is not a subtype of type 'Map<String, dynamic>'

更新

我认为我应该在制作类(class)数据之前将其转换为 json。例如:
TicketsTableData get _ticket => TicketsTableData.fromJson(json.encode(widget.ticketData.values.toList()[0][0].toString()));

但是我得到的 json没有任何报价

最佳答案

问题解决了!!!

onTap: (){
var dataMap ={};
dataMap["id"] = tickets[index].id;
dataMap["subject"] = tickets[index].subject;
dataMap["createdAt"] = tickets[index].createdAt;
dataMap["ticketNumber"] = tickets[index].ticketNumber;

Navigation.router.navigateTo(context, 'showTicketReplies/${json.encode(dataMap)}',transition: TransitionType.fadeIn);
},

关于flutter - 将Map <String,dynamic>数据转换为类数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57770275/

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