Comment arrêter l'exécution du script de configuration rest dans l'API de composition Vue 3
P粉032977207
P粉032977207 2023-08-31 21:47:24
0
1
531
<p>J'ai une sous-page avec un code similaire</p> <pre class="brush:php;toolbar:false;"><configuration du script> importer { injecter } depuis 'vue' importer { useRouter } depuis 'vue-router' const routeur = useRouter() const estQuelque chose = injecter('estQuelque chose') si (!isSomething.value) { router.replace('/une page') } // reste du script d'installation avec beaucoup de code // comme la récupération des données de l'API </script></pre> <p>Cela fonctionne, donc si la condition est fausse, elle sera redirigée. Le problème est que Vue effectue toujours le reste de la configuration du script, comme obtenir tous les événements de données API dont il n'a pas besoin. </p> <p>Existe-t-il un moyen « d’arrêter » la configuration d’un script ? </p> <p>Je ne peux pas utiliser de middleware pour cela car ma condition est basée sur une variable ref fournie par la page parent. Si j'essaie de l'injecter au niveau du hook du routeur, ce n'est pas défini. </p>
P粉032977207
P粉032977207

répondre à tous(1)
P粉334721359

C'est fait comme partout ailleurs en JavaScript :

if (!isSomething.value) {
  router.replace('/somepage')
} else {
  // rest of setup script with a lot of code
}

La présence de « beaucoup de code » suggère que le composant de vue peut être refactorisé pour contenir uniquement le code nécessaire au routage, et le reste peut être extrait dans des composants imbriqués.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal