Flutter 方法map()不适用于映射中的列表

Flutter 方法map()不适用于映射中的列表,flutter,flutter-layout,Flutter,Flutter Layout,我有一张这样的地图: Map userInfo={ 'name':'jack', 'age':30, 'interests':[ {'name':'swimming','level':1},{'name':'running','level':2}, ] } 现在我想使用方法映射将兴趣转换为小部件列表,如果我使用下面的userInfo['interests'],它将不起作用: userInfo['interests'].map((it

我有一张这样的地图:

Map userInfo={
     'name':'jack',
     'age':30,
     'interests':[
       {'name':'swimming','level':1},{'name':'running','level':2},
     ]
    }
现在我想使用方法映射将兴趣转换为小部件列表,如果我使用下面的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
所以问题是,如果我有一个像上面这样的结构,我能直接映射它吗?或者最好的解决方法是什么?我认为使用变量不是很好

试试这个:

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

很有效,非常感谢!不过,我还是很好奇,userInfo['interests']不是一个真正的列表吗?原谅我的冒犯不,这是默认的地图