list - 输入'列表' 不是类型 'List 的子类型>'
问题描述
我DropdownButton
通过循环获取以下内容的 API 请求的结果来简单地打印 a 中的内容时遇到问题:
[{id: 1, nome: foo}, ...]
这是它的代码。
return _response.data.map<Client>((i) => Client.fromJson(i)).toList();
奇怪的是,当打印存储上述调用的变量时[Instance of 'Client', ...]
然后,在视图中,我尝试至少打印每个项目:
DropdownButton<Client>(
onChanged: (client) => print(client),
items: _controller.clients
.map(
(i) => print(i),
)
.toList(),
但是type 'List<void>' is not a subtype of type 'List<DropdownMenuItem<Client>>'
。我已经迷路了。
解决方案
在您打印的地方i
,您需要返回DropDownMenuItem
(with a child)
例如:
items: _controller.clients.map((e) => DropDownMenuItem(value: e, child: Text(e.nome))).toList(),