在 flutter ListView 中加载更多选项

Pra*_*dav 5 android dart flutter flutter-layout

我想分部分获取所有无限列表视图数据,这意味着最初它加载 10 个数据项,滚动更多时它应该获取接下来的 10 个项目。我正在从我的 Laravel api 获取数据,并且在我的 Laravel api 端点中没有 per_page 选项,因此请帮助我集成加载列表视图数据的更多选项。这是我的列表数据。

List<Category> _categoryList = List<Category>();
  CategoryService _categoryService = CategoryService();

  bool isLoading = true;

  @override
  void initState() {
    super.initState();
    _getAllCategories();
  }
  _getAllCategories() async {
    var categories = await _categoryService.getCategories();
    var result = json.decode(categories.body);
    result['data'].forEach((data) {
      var model = Category();
      model.id = data["id"];
      model.name = data["categoryName"];
      model.icon = data["categoryIcon"];
      setState(() {
        _categoryList.add(model);
        isLoading = false;
      });
    });
  }
Run Code Online (Sandbox Code Playgroud)

我正在获取简单 ListTile 中的所有数据。

child: ListView.builder(
        itemCount: //_categoryList.length,
        itemBuilder: (context, index) {
          return ListTile(
            title: _categoryList.name
          );
        },
      ),
Run Code Online (Sandbox Code Playgroud)

Fai*_*wan 0

这个过程称为分页。Laravel 提供了一个检查Laravel 中分页的功能

例如

$users = DB::table('users')->paginate(15);// 15 is limit per page
Run Code Online (Sandbox Code Playgroud)

并检查flutter dev 中的Paging lib。