So stoppen Sie die Ausführung des Rest-Setup-Skripts in der Vue 3-Kompositions-API
P粉032977207
P粉032977207 2023-08-31 21:47:24
0
1
530
<p>Ich habe eine Unterseite mit ähnlichem Code</p> <pre class="brush:php;toolbar:false;"><script setup> import { inject } aus 'vue' importiere { useRouter } aus 'vue-router' const router = useRouter() const isSomething = inject('isSomething') if (!isSomething.value) { router.replace('/somepage') } // Rest des Setup-Skripts mit viel Code // wie API-Datenabruf </script></pre> <p>Es funktioniert. Wenn die Bedingung also falsch ist, wird eine Umleitung durchgeführt. Das Problem ist, dass Vue immer noch den Rest des Skript-Setups übernimmt, z. B. das Abrufen aller nicht benötigten API-Datenereignisse. </p> <p>Gibt es eine Möglichkeit, die Einrichtung eines Skripts zu „stoppen“? </p> <p>Ich kann hierfür keine Middleware verwenden, da meine Bedingung auf der von der übergeordneten Seite bereitgestellten Ref-Variablen basiert. Wenn ich versuche, es auf Router-Hook-Ebene einzuschleusen, ist es undefiniert. </p>
P粉032977207
P粉032977207

Antworte allen(1)
P粉334721359

它的完成方式与 JavaScript 中任何其他地方一样:

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

存在“大量代码”表明视图组件可以重构为仅包含路由必需的代码,其余内容可以提取到嵌套组件。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage