在线元素/模态 LIVEWIRE V3 中时,细长选择不起作用

问题描述 投票:0回答:1

在 livewire 模态(wire-elements/modal)内实现 slim select 时,搜索不起作用,我使用 alpine.js 来初始化组件,它正确加载所有内容,它不再丢失 css,但模态内部的搜索不起作用,只有其他组件中的模态外部 Livewire 才能正常工作

<div x-data="" class="w-full flex flex-col gap-2 pl-6 pb-8" wire:ignore>
    
    <x-label for="selectuser" class="">Ordem Serviço:</x-label>
    
    <select id="selectElement" class="" 
            wire:model.live="selectedOS" x-init="let slim = new SlimSelect({
                            select: '#selectElement',
                        })
                        console.log(slim);"
    >
        
        <option value="" selected>Selecione a OS</option>
        
        @foreach ($OSs as $OS)
            <option value="{{ $OS->id }}">{{ $OS->nome }}</option>
        @endforeach
        
    </select>
    
</div>
php laravel modal-dialog alpine.js slimselect
1个回答
0
投票

我们可以使用 SlimafterChange 事件来代替 wire:model 来分配值 $selectedOS:

<div>

    <div x-data class="w-full flex flex-col gap-2 pl-6 pb-8" wire:ignore>

        <label for="selectuser" >
            Ordem Serviço:
        </label>

        <select id="selectuser"
                x-init="let slim = new SlimSelect({
                    select: '#selectuser',
                    events: { afterChange: (newVal) => { $wire.selectedOS= newVal[0].value; $wire.$refresh()} }
                })"
        >
            <option value="" selected>Selecione a OS</option>

            @foreach ($OSs as $OS)
                <option value="{{ $OS->id }}">{{ $OS->nome }}</option>
            @endforeach

        </select>

    </div>


    <div>
        Selected Os Id: [{{ $selectedOS }}]
    </div>

</div>

© www.soinside.com 2019 - 2024. All rights reserved.