Laravel 背包上的无限滚动结果?

Infinite scrolling results on Laravel Backpack?

我正在为 Laravel 使用 Backpack(Backpack v4.1 和 Laravel 8)。默认视图是分页,我想要无限滚动而不是分页。我找不到任何设置来处理这个问题,我相信 DataTables(底层库)支持它。但我不确定如何在 Backpack 系统中执行此操作。

如果在 DataTables 中可以,那么在 Backpack 中应该也可以。

解决方案 1 - 编辑 datatables_logic blade 文件

您可以 publish the view 使用 php artisan backpack:publish crud/inc/datatables_logic。这会将它的副本放在您的 resources/views/vendor/backpack/crud/inc/datatables_logic.blade.php 中,以便您可以随意编辑它。

在背包 4.1 中 the file looks like this。它非常混乱,但它应该允许您添加 DataTables 扩展或根据您的喜好修改它。

请注意,一旦该文件发布,Backpack 将使用您的文件,而不是包中的文件。因此,当您执行 composer update.

时,您不会获得该文件的任何更新

解决方案 2 - 创建自定义操作

或者,如果您不需要列表操作的所有功能(过滤器、列、分页、导出、搜索),您可以 create a custom operation,例如 InfiniteList。这将使您完全显示您想要的内容,完全您想要的内容。


如果我是你,我会选择第二种解决方案,从头开始构建一些东西。您将完全控制发生的事情,您不会依赖 DataTables 扩展,也不必修复 DataTables 扩展之间的任何冲突。