【问题标题】:Method map() dose not work for a List in a Map方法 map() 不适用于 Map 中的 List
【发布时间】:2019-01-22 01:51:09
【问题描述】:

我有一张这样的地图:

Map userInfo={
     'name':'jack',
     'age':30,
     'interests':[
       {'name':'swimming','level':1},{'name':'running','level':2},
     ]
    }

现在我想使用方法 map() 将兴趣转换为小部件列表,如果我在下面使用 userInfo['interests'],它将不起作用:

userInfo['interests'].map((item){return new Text(item['name'])}).toList() //not work

但是,如果先将 userInfo['interests'] 保存在变量中,它会起作用:

List tmpVariable=userInfo['inetrests'];
tmpVariable.map((item){return new Text(item['name'])}).toList()  //this works

所以问题是,如果我得到了像上面这样的结构,我可以直接映射它吗?或者最好的方法是什么?我认为使用变量不太好。 :)

【问题讨论】:

    标签: flutter flutter-layout


    【解决方案1】:

    试试这个:

    (userInfo['interests'] as List).map((item){return new Text(item['name'])}).toList() 
    

    【讨论】:

    • 它有效,非常感谢!不过,我很好奇,userInfo['interests'] 不是真正的列表吗? (原谅我的冒犯)
    • 不,默认是地图
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-15
    • 2022-07-11
    • 1970-01-01
    • 2016-08-22
    • 2019-05-27
    • 1970-01-01
    • 2014-05-09
    相关资源
    最近更新 更多