39 lines
904 B
PHP
39 lines
904 B
PHP
|
<?php
|
||
|
|
||
|
namespace App\Livewire\Pages;
|
||
|
|
||
|
use Livewire\Component;
|
||
|
|
||
|
class LoveMessage extends Component
|
||
|
{
|
||
|
protected $listeners = ['stickerSelected' => 'handleSticker'];
|
||
|
public $message = '';
|
||
|
public $selectedSticker=null;
|
||
|
|
||
|
public function handleSticker($sticker)
|
||
|
{
|
||
|
$this->selectedSticker = $sticker;
|
||
|
}
|
||
|
public function submitMessage()
|
||
|
{
|
||
|
// 實際存留言時,可同時存貼圖
|
||
|
$data = [
|
||
|
'message' => $this->message,
|
||
|
'sticker' => $this->selectedSticker,
|
||
|
'user' => auth()->user()?->name ?? '訪客',
|
||
|
];
|
||
|
// 存到資料庫或送到 API
|
||
|
// ...
|
||
|
session()->flash('success', '留言已送出!');
|
||
|
|
||
|
// 重置
|
||
|
$this->message = '';
|
||
|
$this->selectedSticker = null;
|
||
|
}
|
||
|
|
||
|
public function render()
|
||
|
{
|
||
|
return view('livewire.pages.love-message');
|
||
|
}
|
||
|
}
|