方法map()不适用于地图中的列表

时间:2019-01-22 01:51:09

标签: flutter flutter-layout

我有一个这样的地图:

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

所以问题是,如果我具有上述结构,是否可以直接映射它?或最好的解决方法是什么?我认为使用变量不是很好。 :)

1 个答案:

答案 0 :(得分:1)

尝试一下:

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