簡體   English   中英

Laravel Livewire 未在表單復選框中應用“已選中”屬性

[英]Laravel Livewire isn't applying "checked" property in form checkbox

我試圖設置一個條件來生成在某些事件下切換的開關,但是當我 livewire:model 復選框總是生成關閉。 我的刀片。php:

<?php
                        use Spatie\Permission\Models\Role;
                        use Spatie\Permission\Models\Permission;
                        $r = $this->role;
                        $gestion = $r->hasPermissionTo('gestionar');
                        $consultas = $r->hasPermissionTo('consultar');
                        $adPe = $r->hasPermissionTo('administrarPerfiles');
                        $adUs = $r->hasPermissionTo('administrarUsuarios');
                        
                    ?>

                    <div class="row">
                        <div class="form-check form-switch col-6 pl-2">
                            <input class="form-check-input" type="checkbox" wire:model="role.Gestion" id="gest" 
                            @if($gestion){
                                checked
                            }
                            @endif>
                            <label class="form-check-label" for="gest">Gestión</label>
                        </div>
                        <div class="form-check form-switch col-6">
                            <input class="form-check-input" type="checkbox" id="cons" wire:model="role.Consulta"
                            @if($consultas){
                                checked
                            }
                            @endif>
                            <label class="form-check-label" for="cons">Consultas</label>
                        </div>
                    </div>

我應該怎么做才能解決這個問題?

只需將 model 綁定到帶有wire:model的復選框就足夠了。 無需手動設置選中的屬性。

不要將您的邏輯放在刀片文件中。 在 Livewire 組件中設置變量並使用wire:model綁定到該變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM