Ich möchte eine Umleitung Vue.js
ähnlich dem Vanille-Javascript durchführen
window.location.href = 'some_url'
Wie könnte ich dies in Vue.js erreichen?
vue.js
url-routing
vuejs2
vue-router
Jimmy Obonyo Abor
quelle
quelle
Antworten:
Wenn Sie verwenden
vue-router
, sollten Sie verwendenrouter.go(path)
, um zu einer bestimmten Route zu navigieren. Auf den Router kann von innerhalb einer Komponente mit zugegriffen werdenthis.$router
.Andernfalls,
window.location.href = 'some url';
funktioniert es gut für nicht einseitige Apps.EDIT :
router.go()
geändert in VueJS 2.0. Sie könnenrouter.push({ name: "yourroutename"})
oder nur verwendenrouter.push("yourroutename")
jetzt umleiten.https://router.vuejs.org/guide/essentials/named-routes.html
quelle
Uncaught ReferenceError: router is not defined
Fehler: Wie wird der Router in die Komponente eingefügt?this.$router.push('routename)
Laut den Dokumenten scheint router.push die bevorzugte Methode zu sein:
Quelle: https://router.vuejs.org/en/essentials/navigation.html
Zu Ihrer Information: Webpack & Komponenten-Setup, Single-Page-App (wo Sie den Router über Main.js importieren), ich musste die Router-Funktionen aufrufen, indem ich sagte:
Beispiel: Wenn Sie zu einer Route namens "Home" umleiten möchten, nachdem eine Bedingung erfüllt ist:
quelle
benutz einfach:
Verwenden Sie keinen Vue-Router, da Sie sonst zu " http://yoursite.com/#!/http://siwei.me " weitergeleitet werden.
Meine Umgebung: Knoten 6.2.1, Vue 1.0.21, Ubuntu.
quelle
In einem Komponentenskript-Tag können Sie den Router verwenden und so etwas tun
quelle
Nur ein kinderleichtes Routing:
quelle
kann das auch versuchen ...
quelle
Wenn Sie zu einer anderen Seite weiterleiten möchten
this.$router.push({path: '/pagename'})
Wenn Sie mit Params routen möchten
this.$router.push({path: '/pagename', param: {param1: 'value1', param2: value2})
quelle
'url' ist die Web-URL, die Sie umleiten möchten.
quelle
Sie können die V-Bindung auch direkt an die Vorlage verwenden, z.
das
:
ist die Abkürzung vonv-bind
.quelle
`/path-to-route/${IdVariable}`
" Oder die hier genannte benannte Route ( router.vuejs.org/guide/essentials/named-routes.html )::href="{ name: 'NamedRouteDeclaredAtRouter' , params: { id: idValue } }"
Wenn jemand eine permanente Umleitung von einer Seite
/a
auf eine andere Seite wünscht/b
Wir können die
redirect:
in der Option hinzugefügte Option verwendenrouter.js
. Zum Beispiel, wenn wir die Benutzer immer auf eine separate Seite umleiten möchten, wenn er die Stamm- oder Basis-URL eingibt/
:quelle
quelle
Also, was ich suchte, war nur, wo ich das platzieren sollte
window.location.href
und die Schlussfolgerung, zu der ich kam, war, dass der beste und schnellste Weg zum Umleiten in Routen besteht (auf diese Weise warten wir nicht auf das Laden von etwas, bevor wir umleiten).So was:
Vielleicht hilft es jemandem ..
quelle
Um mit Ihrer ursprünglichen Anfrage in Einklang zu bleiben:
Sie können so etwas tun:
Beachten Sie, dass dies die Verwendung des Routers von Vue nicht nutzt. Wenn Sie jedoch "eine Umleitung in Vue.js ähnlich dem Vanille-Javascript vornehmen" möchten, funktioniert dies.
quelle