1.3.1 • Published 3 years ago
sherl-react-sdk v1.3.1
sherl-react-sdk
Ce package à pour but de faciliter les interactions avec le service Sherl depuis react.
Autres traductions : English
Installation
Cloner le sdk au même niveau que le dossier du projet :
git clone git@git.winzana.com:sherl/sherl-react-sdk.git
Ensuite à la racine du projet dans lequel on souhaite utiliser le module :
yarn add link:../sherl-react-sdk
Vérifiez la présence des dépendances suivantes :
yarn add axios i18next react react-i18next react-redux redux
Configurer axios :
axios.defaults.baseURL = <baseURL>
import { initialize } from 'sherl-react-sdk';
initialize(
<apiKey>,
<apiSecret>,
<instanceName>, // Will produce https://api.sherl.io
`<baseURL>`,// Optiona
`<analytics_url>`, // Optional
`<cms_url>`, // Optional
`<place_url>`, // Optional
`<calendar_url>`, // Optional
`<communication_url>`, // Optional
`<opinion_url>`, // Optional
`<pdf-url>`, // Optional
);
import { store } from 'sherl-react-sdk';
import { Provider } from 'react-redux';
export const App = () => <Provider store={store}>...app</Provider>;
Ensuite pour que les modifications se répercutent sur le dist automatiquement il suffit de lancer le packager :
yarn install && yarn start
Utilisation
Le package est découpé en domaines. Pour utiliser les fonctionnalités d'un domaine, il suffit de faire comme suit :
import { Organization } from 'sherl-react-sdk';
type OrganizationMetadatas = {
constraints: string;
};
const MyComponent = () => {
const { getOrganization, organization, loading, error } = Organization.useOrganizations<OrganizationMetadatas>();
return ...;
};
Problèmes conus
Cannot read property 'referencesPath' of undefined:
Vérifiez que vous ne destructurez pas directement dans le catch :
try {
response = await PersonApi.getPersons(page, itemsPerPage, params);
} catch ({ name, response: responseError, isAxiosError, stack, ...rest }) {}
Si c'est le cas le changer en suivant :
try {
response = await PersonApi.getPersons(page, itemsPerPage, params);
} catch (err) {
const { name, response: responseError, isAxiosError, stack, ...rest } = err;
}
Domaines Disponibles
- Auth
- Analytics
- BugReport
- Calendar
- Claim
- CMS
- Communication
- Config
- Contact
- Gallery
- Media
- Notification
- Opinion
- Order
- Organization
- Person
- Place
- Shop
- Subscription
- User
License
MIT © support@winzana.com