簡體   English   中英

Livewire Laravel - 每次我嘗試調用一個方法時,我都會收到一個帶有 404 頁面的 div livewire-error

[英]Livewire Laravel - Every time I try to call a method, I get a div livewire-error with 404 page

我剛剛安裝了 livewire/livewire,我正在嘗試制作我的第一個組件。

每次用戶單擊標簽時,我都會嘗試保存一個變量。 該組件渲染得很好,問題是每當我點擊它時,我都會在頁面中間看到它:

<div id="livewire-error" style="position: fixed; width: 100vw; height: 100vh; padding: 50px; background-color: rgba(0, 0, 0, 0.6); z-index: 200000;" tabindex="0">
<iframe style="background-color: rgb(23, 22, 26); border-radius: 5px; width: 100%; height: 100%;">
<!-- 404 ERROR PAGE -->
</iframe></div>

顯示 404 錯誤頁面。

這是我的組件的刀片文件:

<div>
<li class="nav-item d-none d-lg-block"><a class="nav-link nav-link-style" wire:click="switchMode"><i class="ficon" data-feather="moon"></i></a></li>
</div>

這是我的組件的 PHP 文件:

<?php

namespace App\Http\Livewire;

use Livewire\Component;
use Illuminate\Support\Facades\Auth;

class DarkMode extends Component
{
    public function switchMode()
    {
        $user = Auth::user();
        dd($user);
        if($user->darkMode == 0) $user->darkMode = 1;
        else $user->darkMode = 0;
        dd($user->id);
        $user->save;
    }
    
    public function mount() 
    {

    }
    
    public function render()
    {
        return view('livewire.dark-mode');
    }
}

我的 Laravel 版本是8.76.2 ,我的 Livewire 版本是2.8.2

我能做些什么?

您錯過了錨標記中的 href (href="#")。

<div>
    <li class="nav-item d-none d-lg-block">
        <a class="nav-link nav-link-style" wire:click.prevent="switchMode" href="#">
            <i class="ficon" data-feather="moon"></i>
        </a>
    </li>
</div>

您可以使用此方法進行切換。 (如果您的 darkMode 字段是布爾值)

public function switchMode()
{
    $user = Auth::user();
    $user->darkMode = !$user->darkMode;
    $user->save;
}

暫無
暫無

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

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