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

Acessando uma função de um componente Livewire pelo roteador


Frank K Hosaka

Pergunta

O Livewire é basicamente um par de componente e seu Blade correspondente. O Copilot disse que não é possível acessar um método do Livewire pelo roteador, ele disse que o correto é eu invocar o método desejado através do Blade. Eu não gostei da resposta do Copilot, mas com a ajuda dele eu fiz a seguinte gambiarra:

 

arquivo routes > web.php (parcial)
<?php
use App\Livewire\Lbalancete;

Route::middleware(['auth','verified'])->group(function() {
	Route::get('lbalancete/{opcao?}',Lbalancete::class)->name('lbalancete');
}

arquivo resources > views > livewire > loutros.blade.php (parcial)
<a href="lbalancete/1" class="text-gray-500 font-semibold">Criar TBW</a>


arquivo app > Livewire > Lbalancete.php (parcial)
class Lbalancete extends Component {
    function mount($opcao = null) {
        if($opcao==1) { $this->tbw() ;}
        $this->atualizar();    
    }

    function tbw() {
        $ultimoDia=tbdiario::orderBy('dia','desc')->value('dia');
        session(['apuracao'=>$ultimoDia]);
        $balancete=$this->balancete()->balancete;
        DB::table('tbw')->truncate();
        foreach($balancete as $conta) {
            $inicio=$conta->inicio ?? 'null' ;
            $debito=$conta->debito ?? 'null ';
            $credito=$conta->credito ?? 'null';
            $fim=$conta->fim ?? 'null';
            tbw::create(['conta'=>$conta->conta,'descricao'=>$conta->descricao,
                'inicio'=>$inicio,'debito'=>$debito,'credito'=>$credito,'fim'=>$fim]);
        }
        session()->forget('apuracao');
        return redirect()->to("https://123.456.78.900:8443/phpmyadmin/index.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,5k
    • Posts
      652,3k
×
×
  • Criar Novo...