我写了这段代码用于搜索
void Search(String _text) {
if (_text.isEmpty) {
BrandsList = RegisterBusiness().getBrands();
} else {
BrandsList = RegisterBusiness().getBrands().where((element) {
return element.englishName.contains(_text);
}).toList();
}
setState(() {});
}
}
它工作正常,直到我的列表中有一个空的“englishName”并且它完全破坏了整个过程。 我能做什么? 提前致谢。
答案 0 :(得分:0)
如果 englishName 不为空,请尝试验证一个条件
void Search(String _text) {
if (_text.isEmpty) {
BrandsList = RegisterBusiness().getBrands();
} else {
BrandsList = RegisterBusiness().getBrands().where((element) {
if (element.englishName != null) return element.englishName.contains(_text); // return if englishname is not null
else return false ;
}).toList();
}
setState(() {});
}
}