You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Infinite Load Implementation avec WhenVisible d'Inertia.js
1
+
# Infinite Load Implementation avec WhenVisible d'Inertia.js v2.0
2
2
3
3
## Vue d'ensemble
4
4
5
-
Cette implémentation utilise le composant `WhenVisible` d'Inertia.js v2.0+ pour créer un infinite load on scroll pour la liste des équipements.
5
+
Cette implémentation utilise le composant `WhenVisible` d'Inertia.js v2.0 pour créer un infinite load on scroll pour la liste des équipements, basée sur l'exemple de [Bilal Haidar sur dev.to](https://dev.to/bhaidar/implementing-infinite-scrolling-with-laravel-inertiajs-v20-and-vue-3-3il).
6
6
7
7
## Fonctionnalités
8
8
9
9
-**Infinite Load Automatique** : Chargement automatique des nouveaux éléments quand l'utilisateur atteint le bas de la liste
10
-
-**WhenVisible Component** : Utilisation du composant officiel d'Inertia.js pour la détection de visibilité
10
+
-**WhenVisible Component** : Utilisation du composant officiel d'Inertia.js v2.0 pour la détection de visibilité
11
11
-**Fallback Manuel** : Bouton "Charger plus" en cas de problème avec la détection automatique
12
12
-**Animations** : Transitions fluides pour les nouveaux éléments qui apparaissent
13
13
-**États de Chargement** : Indicateurs visuels pendant le chargement
14
-
-**Messages de Succès** : Feedback utilisateur quand de nouveaux éléments sont chargés
14
+
-**Gestion Full Page Load** : Support des rechargements de page avec maintien de la position de scroll
15
15
16
16
## Architecture
17
17
18
18
### Backend (Laravel)
19
19
20
20
**HomeController.php**
21
-
-Méthode `index()` simplifiée pour supporter les requêtes Inertia.js
22
-
-Méthode privée `getFilteredEquipments()` pour la réutilisation du code
23
-
-Gestion automatique de la pagination par Inertia.js
21
+
-Gestion intelligente des requêtes full page vs infinite scroll
22
+
-Chargement de toutes les pages précédentes lors d'un rechargement
23
+
-Méthode `getFilteredEquipments()` optimisée pour la pagination
24
24
25
25
### Frontend (Vue.js)
26
26
@@ -29,20 +29,9 @@ Cette implémentation utilise le composant `WhenVisible` d'Inertia.js v2.0+ pour
29
29
- Passage direct des props d'équipements
30
30
31
31
**ResultsSection.vue**
32
-
- Utilisation du composant `WhenVisible` d'Inertia.js
32
+
- Utilisation du composant `WhenVisible` d'Inertia.js v2.0
33
+
- Configuration avec `:params` au lieu de `:data`
33
34
- Gestion automatique des états de chargement
34
-
- Animations CSS pour les nouveaux éléments
35
-
- Fallback manuel avec bouton
36
-
37
-
## Utilisation
38
-
39
-
### Déclenchement Automatique
40
-
41
-
Le composant `WhenVisible` se déclenche automatiquement quand l'utilisateur fait défiler jusqu'à l'élément de déclenchement.
42
-
43
-
### Déclenchement Manuel
44
-
45
-
Si la détection automatique ne fonctionne pas, un bouton "Charger plus d'équipements" est disponible.
46
35
47
36
## Configuration
48
37
@@ -51,51 +40,40 @@ Si la détection automatique ne fonctionne pas, un bouton "Charger plus d'équip
0 commit comments