Skip to content

Commit 72dfb9e

Browse files
authored
Merge pull request #3 from bfiessinger/fix/null-value-on-mount
fix cascading livewire select inputs nulled after repainting
2 parents 4fb8bf4 + 53bc77c commit 72dfb9e

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

resources/views/select.blade.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<div>
22

3-
<div>
3+
<div x-init="$wire.set('value', {{ $initValueEncoded }})">
44
@if(!$searchable && $shouldShow)
55
@if(!$multiple)
66
@include($defaultView, [

src/LivewireSelect.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ class LivewireSelect extends Component
3333
public $placeholder;
3434

3535
public $value;
36+
public $initValueEncoded;
3637
public $optionsValues;
3738

3839
public $searchable;
@@ -81,6 +82,7 @@ public function mount($name,
8182
$this->placeholder = $placeholder;
8283

8384
$this->value = $value;
85+
$this->initValueEncoded = json_encode($value);
8486

8587
$this->searchable = $searchable;
8688
$this->searchTerm = '';
@@ -128,7 +130,7 @@ public function options($searchTerm = null) : Collection
128130

129131
public function selectedOption($value)
130132
{
131-
return null;
133+
return $value;
132134
}
133135

134136
public function notifyValueChanged()
@@ -359,6 +361,7 @@ public function render()
359361

360362
return view($this->selectView)
361363
->with([
364+
'initValueEncoded' => $this->initValueEncoded,
362365
'options' => $options,
363366
'selectedOption' => $selectedOption ?? null,
364367
'shouldShow' => $shouldShow,

0 commit comments

Comments
 (0)