https://github.com/eduzz/ui-app-loader
https://github.com/eduzz/ui-app-loader
Last synced: 7 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/eduzz/ui-app-loader
- Owner: eduzz
- Created: 2023-07-25T14:48:56.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-04-09T14:18:28.000Z (about 2 years ago)
- Last Synced: 2025-01-28T11:03:09.934Z (over 1 year ago)
- Language: TypeScript
- Size: 156 KB
- Stars: 0
- Watchers: 8
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Eduzz UI: App Loader
Loader de aplicação padrão.
## Importação
```ts
import AppLoader, { useAppLoader } from '@eduzz/ui-app-loader';
```
## Exemplo

Coloque no momento de `createRoot` e use o lazy para aparecer o loader antes da aplicação.
Coloque o minimo de imports nesse arquivo para carregar o mais rapido possível.
```jsx
import { lazy } from 'react';
import { createRoot } from 'react-dom/client';
import AppLoader from '@eduzz/ui-app-loader';
const App = lazy(() => import('./App'));
createRoot(document.getElementById('app') as HTMLElement).render(
);
// App.tsx
import { useEffect } from 'react';
import { useAppLoader } from '@eduzz/ui-app-loader';
function App() {
const appLoader = useAppLoader();
useEffect(() => {
// Faça o que precisar ser feito e entao chame o `hide`
appLoader.hide();
// Caso queira aparecer novamente
appLoader.show();
// Se algo acontecer pode mostrar uma mensagem de erro
appLoader.error(new Error(), () => console.log('Tente novamente'));
}, []);
return
}
```
## Props
### AppLoader props
| prop | tipo | obrigatório | padrão |
|----------|------------------|-------------|--------------|
| logo | `url\|ReactNode` | `false` | `Eduzz Logo` |
| logoDark | `url\|ReactNode` | `false` | `Eduzz Logo` |