flutter 未定义的名称“duplicateItems”,尝试将名称更正为已定义的名称,或定义名称

5anewei6  于 2023-06-24  发布在  Flutter
关注(0)|答案(1)|浏览(145)

未定义的名称“duplicateItems”。尝试将名称更正为已定义的名称,或定义名称。
我已经把它固定到另一个仍然坚持与同样的问题。

class view_problem extends StatefulWidget {
  @override
  State<view_problem> createState() => _view_problemState();
}

class _view_problemState extends State<view_problem> {
  List<problemModel> problemlist = [];
  StreamController _streamController = StreamController();
  Future getAllProblem() async {
    problemlist = await problemcontrollers().getProblem();
    _streamController.sink.add(problemlist);
  }

  @override
  void initState() {
    // TODO: implement initState
    Timer.periodic(Duration(seconds: 1), (timer) {
      getAllProblem();
    });
    super.initState();
  }

  void _filterSearch(String query) {
    setState(() {
      problemlist = duplicateItems
          .where((item) => item.toLowerCase().contains(query.toLowerCase()))
          .toList();
    });
  }
bihw5rsg

bihw5rsg1#

您还没有在函数中定义duplicateItems,甚至全局变量。你必须在使用它之前定义它。如果duplicateItems是一个String,int或其他类型的代码不知道,所以我们不得不提到定义它。在你的例子中,它是一个String列表,我猜它是一个搜索函数,所以我的答案是相应的。

void _filterSearch(String query) {
   List<String> duplicateItems = [];
    setState(() {
      problemlist = duplicateItems
          .where((item) => item.toLowerCase().contains(query.toLowerCase()))
          .toList();
    });
  }

相关问题