处理空值的颤振搜索功能

时间:2021-02-19 21:28:30

标签: flutter dart

我写了这段代码用于搜索

  void Search(String _text) {
    if (_text.isEmpty) {
      BrandsList = RegisterBusiness().getBrands();
    } else {
      BrandsList = RegisterBusiness().getBrands().where((element) {
        return element.englishName.contains(_text);
      }).toList();
    }
    setState(() {});
  }
}

它工作正常,直到我的列表中有一个空的“englishName”并且它完全破坏了整个过程。 我能做什么? 提前致谢。

1 个答案:

答案 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(() {});
          }
        }