Mahdi Fadavi
Mahdi Fadavi
خواندن ۱ دقیقه·۳ ماه پیش

فیلامنت: اسکرول خودکار به بالا در صفحه بندی

یک مشکل فیلامنت در زمان نمایش لیست ها این هست که وقتی روی صفحه بندی کلیک می کنیم به بالا اسکرول نمی شه و باید به صورت دستی این کار رو انجام بدیم. برای رفع این مشکل باید کارهای زیر رو انجام بدیم:

در صفحه ای که لیست رو نمایش می ده (مثلا: ListTasks.php) قطعه کد زیر رو می نویسیم:

class ListTasks extends ListRecords { // ... public function setPage($page, $pageName = 'page'): void { parent::setPage($page, $pageName); $this->dispatch('scroll-to-top'); } }

و در صفحه AppServiceProvider.php هم کد زیر رو اضافه می کنیم:

use Filament\Support\Facades\FilamentView; use Filament\View\PanelsRenderHook; use Illuminate\Support\HtmlString; // ... class AppServiceProvider extends ServiceProvider { // ... public function boot(): void { FilamentView::registerRenderHook( PanelsRenderHook::SCRIPTS_AFTER, fn (): string => new HtmlString('document.addEventListener(&quotscroll-to-top&quot, () => window.scrollTo(0, 0))'), ); } }

و تمام.

فیلامنتfilamentphpلاراولصفحه بندی
شاید از این پست‌ها خوشتان بیاید