在Laravel中如何通過一個接口實現首頁和分頁查詢的混合加載?

在Laravel中如何通過一個接口實現首頁和分頁查詢的混合加載?

laravel高效實現首頁及分頁數據混合加載

移動端應用中,常需實現首頁加載少量數據,用戶下拉刷新加載更多數據的混合加載模式。本文將介紹如何在Laravel框架下,僅使用一個接口優雅地實現此功能。

避免創建多個接口,我們只需巧妙利用請求參數即可。前端首次請求時,設置per_page為10,page為1,獲取首頁10條數據。后續下拉刷新時,將per_page改為5,page遞增,每次獲取5條數據。

以下Laravel控制器代碼演示了該方法:

public function getArticles(Request $request) {     $perPage = $request->input('per_page', 10); // 默認每頁10條     $page = $request->input('page', 1);       // 默認第一頁      $articles = Article::paginate($perPage, ['*'], 'page', $page);      return response()->json($articles); }

前端請求示例:

  • 首次請求:?per_page=10&page=1
  • 下拉刷新:?per_page=5&page=2, ?per_page=5&page=3 …

通過此方法,一個接口即可完美支持首頁加載10條數據,后續分頁加載5條數據的混合加載需求,簡化代碼,提升開發效率。

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享