我正在做一个颤振项目,我将一个对象数组(列表>数组)从我的块传递给流构建器。如果我打印它打印得很好的对象,但是当我尝试将它们映射到 DropdownMenuItem 中时,它会抛出我提到的错误。因此,如果我在类中创建一个相同格式的虚拟数组并访问它,我不会得到错误。不知道我在这里缺少什么,代码如下。
StreamBuilder(
stream: _bLoc.getJsonArray,
builder: (context, snapshot) {
return snapshot.hasData
? new Container(
width: 150,
color: Theme.of(context).primaryColor,
child: new DropdownButton<String>(
items: snapshot.data.map((value) =>
new DropdownMenuItem<String>(
value: value["distance"],
child: new Text(value["distance"]),
)
).toList(),
onChanged: (_) {},
),
)
: Container();
}),
我的 json 结构如下。
[
{"distance": "12km","price": "200LKR",},
{"distance": "2km","price": "100LKR",},
{"distance": "132km","price": "340LKR",}
]