-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mise à jour du "lastReachedPage" plus réactif #1038
Comments
Au moment de la génération, il est possible de déduire les différents champs de réponse qui créent un changement de navigation (décrits dans les problèmes ci-dessus) et de connaître à l'avance les pages concernées. Ainsi, on pourrait exécuter les calculs nécessaires uniquement lors des changements de ces valeurs spécifiques et calculer la valeur appropriée de lastReachedPage. Voici une première réflexion sur la structure de ce processus : {
"componentType": "Input",
//...
"response": {
"name": "RESPONSE_VARIABLE"
},
"effect": {
"page": { "from": "", "to": "" }, // Le PageTag des pages affectées sachant que l'on peut avoir un from sans to et inversement
"filter": [
{ "variableName": "Nom de la variable de filtrage", "page": "{la page de ce filtre}" }, // Supposant que les filtres de condition sont toujours des variables calculées (ce qui n'est pas le cas aujourd'hui)
{ "variableName": "Nom de la variable de filtrage", "page": "{la page de ce filtre}" }
]
}
} En utilisant cette approche, nous pourrions mieux gérer les changements de navigation et rendre lastReachedPage plus dynamique et réactif aux différentes situations rencontrées par l'utilisateur. |
Si la page courante est inférieure au lastReachedPage, alors on analyse les cleaning et resizing avec l'ancienne et la nouvelle valeur de la variable modifiée. On peut ainsi calculer la liste des variables qui deviennent visibles. Si l'une d'entre elles est avant lastReachedPage, on le met à jour... |
Une approche naïve et peu couteuse pour l'idée 1 serait de ne rien faire côté Lunatic et de laisser l’orchestrateur gérer ça:
Avantage:
Inconvénient:
|
@romaintailhurat @QRuhier : réflexions MOAE et DSDS en cours sur le fonctionnel proposé |
Contexte
lastReachedPage
permet de mémoriser la dernière page atteinte dans un formulaire. Cette valeur est mis à jour dès que l'utilisateur dépasse le précédentlastReachedPage
lors de la navigation.Problème
L'implémentation actuelle ne prévoit pas que cette valeur puisse décroître, ce qui pose des problèmes dans plusieurs situations :
lastReachedPage
.lastReachedPage
.lastReachedPage
était sur une sous page de la boucle qui n'existe plus alors il doit avancer.lastReachedPage
doit venir se placer au début de cette nouvelle itération.Il y a donc plusieurs souci pour implémenter un
lastReachedPage
qui soit plus dynamique :lastReachedPage
.Idée 1 : page attendant une réponse
Une première idée exprimée par l'issue #1026 est d'avoir un concept de "page avec réponse manquante" et de plutôt utiliser ce concept pour déterminer la dernière page atteinte par l'utilisateur. Cette solution possède malheureusement aussi des problème :
Idée 2 : conditionFilter au niveau page
Une seconde idée serait d'associer à chaque page une condition d'affichage (comme un conditionFilter mais au niveau de la page). Avec cette approche on pourrait calculer plus facilement si une page est atteignable ou non. Cela implique tout de même d'avoir de nombreux calcul de fait à chaque changement de valeur de variables.
The text was updated successfully, but these errors were encountered: