【发布时间】:2020-05-11 20:52:32
【问题描述】:
DropdownButton 导致 null 异常,因为我在值名称参数中传递字符串变量。
String diseases = "Select a disease";
DropdownButton<String>(
value: diseases,
items: model.diseases
.map((String value) {
return DropdownMenuItem<
String>(
value: value,
child: Text(value),
);
}).toList(),
onChanged: (d) {
setState(() {
diseases = d;
print(
diseases.toString());
});
},
)
如果我使用数组 value:diseases 中的第一个选定元素(按 value:model.diseases[0]),它工作正常,如果我使用它也工作正常将 model.diseases[0] 的值更改为“疾病”后的 hotreload
════════ 小部件库捕获的异常 ═══════════════════════════════════抛出以下断言 构建 Builder(脏):'package:flutter/src/material/dropdown.dart': 断言失败:第 608 行 pos 15:'items == null ||项目.isEmpty || 值 == 空 || items.where((DropdownMenuItem item) => item.value == value).length == 1': 不正确。
要么断言表明框架本身存在错误,要么我们 应在此错误消息中提供更多信息 帮助您确定并解决根本原因。在任一情况下, 请在 GitHub 上提交错误报告此断言:
https://github.com/flutter/flutter/issues/new?template=BUG.md
【问题讨论】:
-
我首先检查是否 (model.diseases!=null?Dropdownbutton(....) .it not null ,我检查了它
标签: flutter