我在上傳文件時(shí)遇到 livewire 問題。我正在使用一個(gè)非常基本的示例來實(shí)現(xiàn)我的目標(biāo),但問題是它在提交時(shí)返回 null。
這是我的 Livewire 控制器代碼:
class UploadPhoto extends Component { use WithFileUploads; public $photo; public function save() { dd($this->photo); //returns null $this->validate([ 'photo' => 'image|max:1024', // 1MB Max ]); $this->photo->store('photos'); } } <form wire:submit.prevent="save"> <input type="file" wire:model="photo"> @error('photo') <span class="error">{{ $message }}</span> @enderror <button type="submit">Save Photo</button> </form>
所以,正如我之前所說,幾周前我也遇到了同樣的問題。
我有一個(gè)非?;镜?strong>Livewire控制器來存儲(chǔ)圖像,但無論我做什么,輸入都會(huì)返回一個(gè)NULL值,或者一直說圖像輸入是必需,即使選擇了圖像。
但是,如果我使用常規(guī)控制器(無 Livewire),一切都會(huì)以某種方式完美運(yùn)行。
在浪費(fèi)了很多時(shí)間之后,我仍然在生產(chǎn)環(huán)境中啟動(dòng)了我的網(wǎng)站,并發(fā)現(xiàn)那里的一切都運(yùn)轉(zhuǎn)良好。
所以我一直想知道:為什么它在我的本地環(huán)境中不起作用?
一切都是最新的!
我還在本地運(yùn)行我的項(xiàng)目,并一直在端口 :3000 (http://localhost:3000) 上使用熱重載。
由于這個(gè)問題讓我抓狂,我停止了熱重載并繼續(xù)測試主要服務(wù)主機(jī)名 (localhost) 上的所有內(nèi)容。
并且神奇地...一切正常。
我仍然不明白為什么 Livewire 無法通過熱重載正常工作。我的意思是,除了 input type="file"
來存儲(chǔ)圖像之外,一切都正常工作。
希望這對(duì)您有所幫助!