@devesharp/react
v1.4.33
Published
yarn add @fortawesome/fontawesome-svg-core @fortawesome/free-regular-svg-icons @fortawesome/free-solid-svg-icons @fortawesome/react-native-fontawesome yarn add @react-navigation/bottom-tabs @react-navigation/drawer @react-navigation/native @react-navigati
Downloads
116
Readme
Instalar dependencias
yarn add @fortawesome/fontawesome-svg-core @fortawesome/free-regular-svg-icons @fortawesome/free-solid-svg-icons @fortawesome/react-native-fontawesome yarn add @react-navigation/bottom-tabs @react-navigation/drawer @react-navigation/native @react-navigation/stack yarn add @unform/core @unform/web @unform/mobile yarn add rxjs yarn add react-native-svg yarn add react-native-reanimated cd ios && pod install
add
Web
yarn add @fortawesome/fontawesome-svg-core @fortawesome/free-regular-svg-icons @fortawesome/free-solid-svg-icons @fortawesome/react-fontawesome yarn add rxjs
Library
Components:
Hooks
useView
Descrição
Hook para facilitar a criação de páginas, facilita a busca e status da página.
Uso:
import React, { useState } from 'react';
import { Observable } from 'rxjs';
import { useView, Resolve } from 'react-lib';
const ExampleRequest: Resolve<any> = (params: any) =>
new Observable((obs) => {
obs.next({});
obs.complete();
});
const DelayedContentComponent = () => {
const { starting, errorLoadData, registerOnInit, registerOnInitError, reloadPage } = useView({
resolves: {
example: ExampleRequest,
},
});
const [resource, setResource] = useState<any>();
registerOnInit((response) => {
setResource(response.example);
});
registerOnInitError((err) => {
// Error
});
return (
<div>
{starting && <div>Carregando página</div>}
{errorLoadData && <div>Erro ao carregar página</div>}
{!starting && errorLoadData && <div>Página carregada: {JSON.stringify(resource)}</div>}
{!starting && errorLoadData && (
<button onClick={() => reloadPage()}>Recarregar página</button>
)}
</div>
);
};
Opções:
| Nome | Tipo | Descrição |
| --- | --- | --- |
| resolves | { [key: string]: Resolve<any> }
| Observables que devem ser iniciados antes do inicio da página |
| firstLoad | boolean
| Se deve fazer o carregamento inicial dos resolves |
Retorno:
| Nome | Tipo | Descrição |
| --- | --- | --- |
| registerOnInit
| (fn: (resolves: any) => void) => void
| Registrar funções que são chamadas na inicialização da página |
| registerOnInitError
| (fn: (err: any) => void) => void
| Registrar funções que são chamadas no erro na inicialização da página |
| starting
| boolean
| Status: Iniciando |
| errorLoadData
| boolean
| Status: Erro no carregamento dos resolves |
| criticalError
| boolean
| Status: Erro crítico desconhecido |
| statusInfo
| IStatusInfo
| statusInfo |
| setStatusInfo
| (v: IObject) => any
| Definir status da página |
| $destroy
| Subject<any>
| Subject para destruir resolves |
| reloadPage
| (wait1s?: boolean) => void
| Recarregar página |
| getParamsResolve
| MutableRefObject<{ [key: string]: () => any }>
| Lista de funções que devem ser executadas no parametro de determinado resolver |
| registerResolveParams
| (resolveName: string, fn: () => any) => void
| Registrar nova função para parametro de resolver |