olssonm / livewire-synthesizer
v0.1
2023-12-20 09:21 UTC
Requires
- livewire/livewire: ^3.3
Requires (Dev)
- pestphp/pest: ^2.28
- phpunit/phpunit: ^10.5
- squizlabs/php_codesniffer: ^3.8
README
警告
仍在开发中,绝对不适用于生产环境。
使用 Livewire Synthesizers 通过简单对象进行简单类操作 - 相比从头开始编写自定义合成器可以节省一些时间。
此包尝试对资源上的所有属性进行初始化和去初始化。
注意
Livewire 已经包含了对简单对象(如集合和数组)的合成器,当需要使用自定义对象时,此包就是为你准备的。
资源
代表你的自定义类/对象。你所要做的就是扩展 Olssonm\LivewireSynthesizer\Resources\GenericResource
。
<?php namespace App\Resources; use Olssonm\LivewireSynthesizer\Resources\GenericResource; class Post extends GenericResource { // }
合成器
你的合成器,扩展 Olssonm\LivewireSynthesizer\Synthesizers\GenericSynthesizer
,设置一个键并指定你的类,你几乎就设置好了。
请注意,你的键必须是唯一的。
<?php namespace App\Synthesizers; use App\Resources\Post; use Olssonm\LivewireSynthesizer\Synthesizers\GenericSynthesizer; class Post extends GenericSynthesizer { public static $key = 'post'; public static $class = Post::class; }
注册你的合成器
为了使 Livewire 能够找到并注册合成器,你可以在 AppServiceProvider 中注册它;
use App\Support\Synthesizers\Post; use Livewire\Livewire; /** * Register any application services. */ public function register(): void { Livewire::propertySynthesizer(Post::class); }