Frank K Hosaka Postado Domingo às 13:22 Denunciar Share Postado Domingo às 13:22 O <flux:modal> não funcionou comigo, acredito que ele só vai funcionar se eu licenciar o flux, mas não tenho certeza. O JavaScript funciona no Laravel 12 Livewire, mas eu não consigo fazer funcionar a classe XMLHttp nesse código: <script> function atualizar(custoAtual, custoAnterior, codprod) { confirma = confirm("Atualizar?\ncusto atual: " + custoAtual + "\ncusto anterior: " + custoAnterior); if (confirma) { xmlhttp = new XMLHttpRequest() url = "nfCusto" formData = new FormData() formData.append('custoAtual', custoAtual) formData.append('codprod', codprod) xmlhttp.open("POST", url, true) xmlhttp.send(formData) location.replace("nfAtualiza") } } </script> A minha saída foi apelar para a ignorância, assim: arquivo resources > views > teste.blade.php @vite(['resources/css/app.css', 'resources/js/app.js']) <title>Teste</title> <script> function atualizar(custoAtual, custoAnterior, codprod) { confirma = confirm("Atualizar?\ncusto atual: " + custoAtual + "\ncusto anterior: " + custoAnterior); if (confirma) { location.replace("nfCusto?custoAtual="+custoAtual+"&codprod="+codprod) } } </script> custo anterior da maçã <?=$custo?> <div class="flex w-[300px]"> <div class="w-[200px]">Custo Atual</div> <input onchange="atualizar(this.value,<?=$custo?>,343)" class="border"/> </div> Para isso funcionar, tive que inventar moda no arquivo web.php: arquivo routes > web.php Route::get('nfCusto',[NF::class,'custo']); Para voltar na página teste.blade.php, fiz mais gambiarra: arquivo app > Http > Controllers > NF.php (parcial) <?php // ... function custo(Request $request) { $marg=tbprod::where('codprod',$request->codprod)->value('marg'); $venda=pvenda($request->custoAtual,$marg); tbprod::where('codprod',$request->codprod) ->update(['custo'=>$request->custoAtual,'venda'=>$venda]); $class="class='w-[70px] text-right'"; tbnf::where('codprod',$request->codprod) ->update(['custoanterior'=>$request->custoAtual,'class'=>$class]); $teste=tbprod::where('codprod',$request->codprod)->value('custo'); return view('teste',['custo'=>$teste]) ; } Fazer teste é fácil, o meu drama é que o meu arquivo original veio de um download da nota fornecedor, e certamente a minha gambiarra não vai funcionar. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Frank K Hosaka Postado Segunda às 02:28 Autor Denunciar Share Postado Segunda às 02:28 O modal da gambiarra deu certo no meu código principal. Guardei todas as variáveis que foram utilizadas na NFview numa session( ), depois que o JavaScript chama a função custo, a função custo recupera todas as variáveis da session( ) e em seguida invoca a NFview novamente. Isso é um serviço mal feito, mas como ele funciona, vou deixar a suposta solução Livewire para frente. O que eu gostei mesmo é do componente <flux>, a maioria está amarrada no Livewire, mas alguns deles facilitam a codificação no Laravel, principalmente porque o Tailwind não é nada fácil. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Frank K Hosaka
O <flux:modal> não funcionou comigo, acredito que ele só vai funcionar se eu licenciar o flux, mas não tenho certeza.
O JavaScript funciona no Laravel 12 Livewire, mas eu não consigo fazer funcionar a classe XMLHttp nesse código:
A minha saída foi apelar para a ignorância, assim:
Para isso funcionar, tive que inventar moda no arquivo web.php:
arquivo routes > web.php Route::get('nfCusto',[NF::class,'custo']);
Para voltar na página teste.blade.php, fiz mais gambiarra:
Fazer teste é fácil, o meu drama é que o meu arquivo original veio de um download da nota fornecedor, e certamente a minha gambiarra não vai funcionar.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
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.