Atribut Slot Komponen Blade di Laravel 8.56
Atribut Slot Komponen Blade di Laravel 8.56
Tim Laravel merilis versi 8.56 dengan metode firstOrFail() pada koleksi, atribut slot komponen Blade, aturan validasi bersyarat default, dan perubahan terbaru di cabang 8.x:
Peningkatan Asersi Validasi
Dwight Watson menyumbangkan peningkatan asersi validasi pada assertInvalid yang memberikan peningkatan kualitas hidup:
// Secara generik memeriksa adanya error$response->assertInvalid();// Sebelumnya diperlukan array// Sekarang Anda bisa melewatkan kunci string$response->assertInvalid(['name', 'email']);$response->assertInvalid('email');Atribut Slot Komponen Blade
Dan Harrin menyumbangkan kemampuan slot komponen Blade untuk memiliki atribut mereka sendiri:
<x-card class="shadow-sm"> <x-slot name="heading" class="font-bold"> Heading </x-slot> Konten <x-slot name="footer" class="text-sm"> Footer </x-slot></x-card>Untuk mempelajari lebih lanjut, lihat kode dan diskusi di Pull Request #38372.
Metode "firstOrFail()" pada Koleksi
powellblyth menyumbangkan metode firstOrFail() pada koleksi (dan koleksi malas) yang membuat segalanya lebih lancar:
// Tanpa `firstOrFail()`$collection = new Collection([ ['name' => 'foo'], ['name' => 'foo'], ['name' => 'bar'],]);// Kode yang sedikit tidak jelas dan sulit dipindaiif ($collection->where('name', 'fish')->count() === 0) { $collection->add('fish');}$this->doSomethingWith($collection);Menggunakan firstOrFail() nilai yang hilang akan melempar pengecualian:
$collection = new Collection([ ['name' => 'foo'], ['name' => 'foo'], ['name' => 'bar'],]);try { $collection->where('name', 'fish')->firstOrFail();} catch (ItemNotFoundException) { // Pastikan pengguna memiliki 'fish' di koleksinya $collection->add('fish');}$this->doSomethingWith($collection);Aturan Default untuk Validasi Bersyarat
bastien-phi menyumbangkan aturan default ketika kondisi false daripada harus menulis aturan bersyarat terbalik:
return [ 'email' => [ Rule::when($this->someComplexTest(), ['required']), Rule::when(!$this->someComplexTest(), ['nullable']), ],];Sekarang Anda dapat melewatkan aturan default sebagai argumen ketiga:
return [ 'email' => [ Rule::when( $this->someComplexTest(), ['required'], // Ketika kondisi `false`... ['nullable'] ), ],];Mendapatkan URL Permintaan Lengkap Tanpa Parameter Query
Ali Saleem menyumbangkan metode permintaan fullUrlWithoutQuery() yang memungkinkan Anda menghapus parameter tertentu dari string query:
// Contoh: example Menghapus `color`request()->fullUrlWithoutQuery('color');// example Menghapus `color` dan `size`request()->fullUrlWithoutQuery(['color', 'size']);// exampleCatatan Rilis
Anda dapat melihat daftar lengkap fitur baru dan pembaruan di bawah ini serta perbedaan antara 8.55.0 dan 8.56.0 di GitHub. Catatan rilis berikut langsung dari changelog:
v8.56.0
Ditambahkan
- Menambahkan firstOrFail ke Illuminate\Support\Collections dan Illuminate\Support\LazyCollections
- Mendukung caching rute dengan binding yang dihapus
- Mengizinkan hanya kunci langsung pada safe di FormRequest
- Menambahkan aturan default dalam aturan bersyarat
- Menambahkan metode fullUrlWithoutQuery ke Request
- Menambahkan opsi --implicit (dan -i) ke make:rule
- Menambahkan dukungan port colon di opsi host perintah serve
Diubah
- Testing: Mengakses properti komponen dari nilai kembalian $this->component()
- Memperbarui InteractsWithInput::bearerToken()
- Perbaikan kecil pada API asersi validasi
- Atribut slot komponen Blade
- Metode yang nyaman untuk pembatasan laju
- Menjalankan event:clear pada optimize:clear
- Menghapus MAC ganda yang tidak perlu untuk cipher AEAD
- Menambahkan otorisasi Response ke Form Requests
- Membuat TestResponse::getCookie publik sehingga dapat langsung digunakan dalam pengujian
Platform Lainnya
slot demo wild bounty anti lag
Berita Piala Dunia
Jika Anda memiliki pertanyaan, silakan kirim email ke [email protected]