Aller au contenu principal

🧭 React Native — Navigation

Navigation typée avec la fabrique Destination de react-native-azeoo-lib.

import { Destination } from 'react-native-azeoo-lib';

await sdk.navigate(Destination.nutrition.plan('summer-plan-2025'));
await sdk.navigate(Destination.nutrition.recipe(42, 'Pasta'));
await sdk.navigate(Destination.nutrition.scanner('ai'));
await sdk.navigate(Destination.nutrition.search('lunch'));

await sdk.navigate(Destination.training.workouts());

Types de repas : 'breakfast' | 'lunch' | 'dinner' | 'snack'.
Types de scanner : 'barcode' | 'mobile' | 'ai'.


API de pile​

await sdk.navigate(Destination.nutrition.search());

await sdk.goBack();
await sdk.backToRoot();
const canPop = await sdk.canGoBack();

Les écouteurs BackHandler s'exécutent avant le gestionnaire du pont natif.


Conteneurs de module​

Avec un navigateur d'onglets JS pour les vues natives nutrition + entraînement :

sdk.setModuleContainer((module) => {
setActiveTab(module === 'nutrition' ? 0 : 1);
return true; // handled
});
Retournez true quand vous avez changé d'onglet

Retourner false indique au SDK que votre hôte n'a pas géré le changement de module.


// initialize — see Configuration
await AzeooSDK.initialize({ apiKey, deepLinks: { scheme, host, pathPrefix } });

// incoming link
const handled = await sdk.handleDeepLink(url);
if (!handled) {
await sdk.navigate(Destination.nutrition.plan(parsedId));
}

Branchez Linking.addEventListener('url', …) ou le linking React Navigation.


Vues intégrées​

<NutritionView style={{ flex: 1 }} />
<TrainingView style={{ flex: 1 }} />

Combinez avec navigate quand un bouton de l'écran hôte doit ouvrir une route SDK spécifique.

Voir Composants UI.


Voir aussi​