在继续之前,确保 filament/schemas 已安装在你的项目中。你可以通过运行以下命令检查:
composer show filament/schemas如果未安装,请查阅安装指南并根据说明配置各个组件。
首先,生成一个新的 Livewire 组件:
php artisan make:livewire ViewProduct然后,在页面上渲染你的 Livewire 组件:
@livewire('view-product')或者,你可以使用一个整页的 Livewire 组件:
use App\Livewire\ViewProduct;
use Illuminate\Support\Facades\Route;
Route::get('products/{product}', ViewProduct::class);你必须使用 InteractsWithSchemas 特性,并实现 HasSchemas 接口在你的 Livewire 组件类上:
use Filament\Schemas\Concerns\InteractsWithSchemas;
use Filament\Schemas\Contracts\HasSchemas;
use Livewire\Component;
class ViewProduct extends Component implements HasSchemas
{
use InteractsWithSchemas;
// ...
}接下来,将一个方法添加到 Livewire 组件中,该方法接受一个 $schema 对象,修改它,并返回它:
use Filament\Schemas\Schema;
public function productSchema(Schema $schema): Schema
{
return $schema
->components([
// ...
]);
}最后,在 Livewire 组件的视图中渲染模式:
{{ $this->productSchema }}filament/schemas 也包含以下包:
filament/操作这些包允许你在 Livewire 组件内使用它们的组件。
例如,如果你的 schema 使用 动作,请记住实现 HasActions 接口并使用 InteractsWithActions 特性在你的 Livewire 组件类上。
如果你正在使用任何其他 Filament 组件 在你的架构中,确保同时安装并集成对应的包。