我得到了这样的地图:
Map userInfo={
'name':'jack',
'age':30,
'interests':[
{'name':'swimming','level':1},{'name':'running','level':2},
]
}
现在我想使用方法map()将兴趣转换为Widgets列表,如果我使用下面的userInfo ['interest'],它将无法工作:
userInfo['interests'].map((item){return new Text(item['name'])}).toList() //not work
但是,如果首先在变量中保存userInfo ['interest'],它的工作原理如下:
List tmpVariable=userInfo['inetrests'];
tmpVariable.map((item){return new Text(item['name'])}).toList() //this works
所以问题是,如果我得到一个像上面这样的结构,我可以直接映射吗?或者最好的方法是什么?我认为使用变量并不是那么好。 :)
试试这个:
(userInfo['interests'] as List).map((item){return new Text(item['name'])}).toList()