Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Como fazer para colocar um spinner antes de carregar os dados do bd? Eu clico no link e entra na função do controle e só vai para a página da views quando já está pronto a query. Vi uns exemplos de colocação de spinner, mas se a página ainda não apareceu como faço? Vou anexar a função que chama a página para facilitar.
public function inativos() {
$session = \Config\Services::session();
$pager = \Config\Services::pager();
$usuarios=$this->usuarios->getInativos();//faz a query no bd.
$dados=[
'usuarios'=>$usuarios,
'pager'=>$this->usuarios->pager,
];
echo view('Admin/Relatorios/listaInativos',$dados);
}A melhor forma de resolver, seria com ajax
>
2 horas atrás, Marcos_imasters disse:
adicione um atraso antes da view
usleep(1000000); // 1 segundo
no listaInativos.php
adicione o html
<div id="spinnerContainer" class="text-center d-none">
<div class="spinner-border text-primary" role="status">
<span class="sr-only">Carregando...</span>
</div>
</div>
e o jquery
$(document).ready(function() {
$("#spinnerContainer").removeClass("d-none");
$(window).on('load', function() {
$("#spinnerContainer").addClass("d-none");
});
});
Obrigado pela ajuda. Na verdade, não aciona antes da query e sim atrasa a query e coloca o spinner para a pessoa esperar.
adicione um atraso antes da view
usleep(1000000); // 1 segundo
no listaInativos.php
adicione o html