useLoadingIndicator
Este composable dá acesso ao estado de carregamento da página do aplicativo.
Descrição
Um composable que retorna o estado de carregamento da página. Usado por <NuxtLoadingIndicator> e controlável.
Ele se conecta aos eventos page:loading:start e page:loading:end para alterar seu estado.
Parâmetros
duration: Duração da barra de carregamento, em milissegundos (padrão2000).throttle: Controla o aparecimento e desaparecimento, em milissegundos (padrão200).estimatedProgress: Por padrão, o Nuxt irá desacelerar à medida que se aproxima de 100%. Você pode fornecer uma função personalizada para personalizar a estimativa de progresso, que é uma função que recebe a duração da barra de carregamento (acima) e o tempo decorrido. Deve retornar um valor entre 0 e 100.
Propriedades
isLoading
- tipo:
Ref<boolean> - descrição: O estado de carregamento
error
- tipo:
Ref<boolean> - descrição: O estado de erro
progress
- tipo:
Ref<number> - descrição: O estado de progresso. De
0a100.
Métodos
start()
Define isLoading como true e começa a aumentar o valor de progress. start aceita uma opção { force: true } para pular o intervalo e mostrar o estado de carregamento imediatamente.
set()
Define o valor de progress para um valor específico. set aceita uma opção { force: true } para pular o intervalo e mostrar o estado de carregamento imediatamente.
finish()
Define o valor de progress para 100, para todos os temporizadores e intervalos e então redefine o estado de carregamento 500 ms depois. finish aceita uma opção { force: true } para pular o intervalo antes que o estado seja redefinido, e { error: true } para mudar a cor da barra de carregamento e definir a propriedade de erro como true.
clear()
Usado por finish(). Limpa todos os temporizadores e intervalos usados pelo composable.
Exemplo
const { progress, isLoading, start, finish, clear } = useLoadingIndicator({
duration: 2000,
throttle: 200,
// Esta é a forma como o progresso é calculado por padrão
estimatedProgress: (duration, elapsed) => (2 / Math.PI * 100) * Math.atan(elapsed / duration * 100 / 50)
})
const { start, set } = useLoadingIndicator()
// mesmo que set(0, { force: true })
// define o progresso para 0 e mostra o carregamento imediatamente
start({ force: true })※Esta página é uma tradução não oficial da documentação oficial do Nuxt.js.
A página correspondente na documentação oficial está aqui:
https://nuxt.com/docs/3.x/api/composables/use-loading-indicator