So stoppen Sie die Ausführung des Rest-Setup-Skripts in der Vue 3-Kompositions-API
P粉032977207
2023-08-31 21:47:24
<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>
它的完成方式与 JavaScript 中任何其他地方一样:
存在“大量代码”表明视图组件可以重构为仅包含路由必需的代码,其余内容可以提取到嵌套组件。