Ir para conteúdo
Fórum Script Brasil
  • 0

Liveware e o roteador web.php


Frank K Hosaka

Pergunta

O meu roteador é enorme, para cada tarefa dentro da página blade precisei criar várias rotas.

Esse não é o caso do Livewire, ele só precisa do roteador para chamar a classe 

Route::get('ldiario',Ldiario::class);

O grande problema é na hora de mudar o formulário. Ontem, o Copilot mostrou um interessante código chamado MainComponent onde o Liveware alterna os formulários. O código é bem engenhoso, aquilo é para programador profissional que trabalha com a abstração de nível 2, eu ainda estou no nível 0, assim eu fiz a seguinte gambiarra:
 

arquivo routes > web.php (parcial)
<?php
 // ...
 Route::get('ldiario',Ldiario::class);
 Route::get('ldiarioHistorico',LdiarioHistorico::class)->name('ldiarioHistorico');
?>

arquivo resources > view > livewire > ldiario.blade.php (parcial)
                <input wire:model="hist" placeholder="Procurar no Histórico" wire:change="historico"
                    class="rounded py-0 ml-2 border-none bg-transparent text-black font-semibold" 
                    autocomplete=off>

arquivo app > Liveware > Ldiario.php (parcial)
<?php
public $hist;
public function historico() {
        return redirect()->route('ldiarioHistorico',['filtro'=>$this->hist]);
    }
?>

arquivo app > Livewire > LdiarioHistorico.php
<?php
namespace App\Livewire;
use Illuminate\Http\Request;
use Livewire\Attributes\Layout;
use Livewire\Component;

#[Layout('components.layouts.app',['title'=>'Historico'])]
class LdiarioHistorico extends Component {
    public $filtro;

    public function mount(Request $request) {
        $this->filtro=$request->input('filtro');
    }  
}
?>

arquivo resources > views > liveware > ldiario-historico.blade.php
<div>
    {{ $filtro}}
</div>

// note que o nome da classe é LdiarioHistorico, mas a diretiva #[layout( )]
   vai buscar o ldiario-historico.blade.php

 

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,4k
    • Posts
      652,2k
×
×
  • Criar Novo...