Heim Web-Frontend js-Tutorial So verwenden Sie den Vue-Router zum Wechseln der Seiten in Vue

So verwenden Sie den Vue-Router zum Wechseln der Seiten in Vue

Jun 23, 2018 pm 05:12 PM
router vue 滚动条 页面切换

In diesem Artikel wird hauptsächlich die Implementierungsmethode des automatischen Scrollens nach oben vorgestellt, wenn Vue-Router zum Wechseln der Seiten im Vue-Projekt verwendet wird. In diesem Artikel wird die Verwendung kurz vorgestellt von scrollTop. Freunde in Not können sich auf

beziehen. Manchmal benötigen wir die Bildlaufleiste der Seite, um zu einer festen Position zu scrollen, im Allgemeinen mithilfe der Window scrollTo() -Methode.

Die Syntax lautet: scrollTo(xpos,ypos)

xpos: erforderlich. Die X-Koordinate des Dokuments, das in der oberen linken Ecke des Dokumentanzeigebereichs des Fensters angezeigt werden soll.

ypos: erforderlich. Die Y-Koordinate des Dokuments, das in der oberen linken Ecke des Dokumentanzeigebereichs des Fensters angezeigt werden soll.

Zum Beispiel ist die Koordinatenposition des Bildlaufinhalts 100.500:

window.scrollTo(100,500);

Okay, dieser scrollTop wird hier nur kurz vorgestellt -Router-Verhalten.

Wenn Sie Front-End-Routing verwenden und zu einer neuen Route wechseln, möchten Sie, dass die Seite nach oben scrollt oder die ursprüngliche Scrollposition beibehält, genau wie beim Neuladen der Seite. vue-router kann das, aber besser: Sie können damit anpassen, wie die Seite beim Routenwechsel scrollt.

Hinweis: Diese Funktion ist nur im HTML5-Verlaufsmodus verfügbar.

Beim Erstellen einer Router-Instanz können Sie eine scrollBehavior-Methode bereitstellen:

const router = new VueRouter({
 routes: [...],
 scrollBehavior (to, from, savedPosition) {
  // return 期望滚动到哪个的位置
 }
})
Nach dem Login kopieren

Die scrollBehavior-Methode empfängt von und zu Routenobjekten. Der dritte Parameter „savedPosition“ ist nur bei der Popstate-Navigation verfügbar (ausgelöst durch die Vorwärts-/Zurück-Schaltflächen des Browsers).

Diese Methode gibt die Objektinformationen der Bildlaufposition zurück, die wie folgt aussehen:

{ x: number, y: number }
{ selector: string, offset? : { x: number, y: number }} (offset 只在 2.6.0+ 支持)
Nach dem Login kopieren

Wenn sie einen falschen Wert (Anmerkung des Übersetzers: falsch ist nicht falsch, siehe hier) zurückgibt, oder ein leeres Objekt. Dann erfolgt kein Scrollen.

Beispiel:

scrollBehavior (to, from, savedPosition) {
 return { x: 0, y: 0 }
}
Nach dem Login kopieren

Für alle Routennavigation lassen Sie die Seite einfach nach oben scrollen.

Zur gespeicherten Position zurückkehren. Wenn Sie die Zurück-/Vorwärts-Taste drücken, verhält es sich wie das native Verhalten des Browsers:

scrollBehavior (to, from, savedPosition) {
 if (savedPosition) {
  return savedPosition
 } else {
  return { x: 0, y: 0 }
 }
}
Nach dem Login kopieren

Wenn Sie das Verhalten von „Zum Anker scrollen“ simulieren möchten:

scrollBehavior (to, from, savedPosition) {
 if (to.hash) {
  return {
   selector: to.hash
  }
 }
}
Nach dem Login kopieren

Wir können Routing-Metainformationen auch verwenden, um das Scrollen auf einer feineren Ebene zu steuern.

 routes: [
  { path: '/', component: Home, meta: { scrollToTop: true }},
  { path: '/foo', component: Foo },
  { path: '/bar', component: Bar, meta: { scrollToTop: true }}
 ]
Nach dem Login kopieren

Vollständiges Beispiel:

import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
const Home = { template: '

home

' } const Foo = { template: '

foo

' } const Bar = { template: `

bar

Anchor

` } // scrollBehavior: // - only available in html5 history mode // - defaults to no scroll behavior // - return false to prevent scroll const scrollBehavior = (to, from, savedPosition) => { if (savedPosition) { // savedPosition is only available for popstate navigations. return savedPosition } else { const position = {} // new navigation. // scroll to anchor by returning the selector if (to.hash) { position.selector = to.hash } // check if any matched route config has meta that requires scrolling to top if (to.matched.some(m => m.meta.scrollToTop)) { // cords will be used if no selector is provided, // or if the selector didn't match any element. position.x = 0 position.y = 0 } // if the returned position is falsy or an empty object, // will retain current scroll position. return position } } const router = new VueRouter({ mode: 'history', base: __dirname, scrollBehavior, routes: [ { path: '/', component: Home, meta: { scrollToTop: true }}, { path: '/foo', component: Foo }, { path: '/bar', component: Bar, meta: { scrollToTop: true }} ] }) new Vue({ router, template: `

Scroll Behavior

  • /
  • /foo
  • /bar
  • /bar#anchor

` }).$mount('#app')
Nach dem Login kopieren

Ich habe es im Internet überprüft und Internetnutzer sagten, dass Sie auch versuchen können, dies in die main.js-Eintragsdatei mit vue-router zu schreiben

router.afterEach((to,from,next) => {
  window.scrollTo(0,0);
});
Nach dem Login kopieren

Ich habe es für alle zusammengestellt und hoffe, dass es in Zukunft für alle hilfreich sein wird.

Verwandte Artikel:

Detaillierte Einführung in Routing und Middleware in node.js

So implementieren Sie grundlegende Einkäufe mithilfe der Angular Car-Funktion

Detaillierte Einführung in kontrollierte Komponenten und unkontrollierte Komponenten in React

Das obige ist der detaillierte Inhalt vonSo verwenden Sie den Vue-Router zum Wechseln der Seiten in Vue. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie Bootstrap in Vue So verwenden Sie Bootstrap in Vue Apr 07, 2025 pm 11:33 PM

Die Verwendung von Bootstrap in Vue.js ist in fünf Schritte unterteilt: Startstrap installieren. Bootstrap in main.js. Verwenden Sie die Bootstrap -Komponente direkt in der Vorlage. Optional: benutzerdefinierter Stil. Optional: Verwenden Sie Plug-Ins.

So fügen Sie Funktionen zu Schaltflächen für Vue hinzu So fügen Sie Funktionen zu Schaltflächen für Vue hinzu Apr 08, 2025 am 08:51 AM

Sie können der VUE -Taste eine Funktion hinzufügen, indem Sie die Taste in der HTML -Vorlage an eine Methode binden. Definieren Sie die Methode und schreiben Sie die Funktionslogik in der VUE -Instanz.

So verweisen Sie auf die JS -Datei mit Vue.js So verweisen Sie auf die JS -Datei mit Vue.js Apr 07, 2025 pm 11:27 PM

Es gibt drei Möglichkeiten, sich auf JS -Dateien in Vue.js zu beziehen: Geben Sie den Pfad direkt mit dem & lt; Skript & gt an. Etikett;; Dynamischer Import mit dem montierten () Lebenszyklushaken; und importieren über die Vuex State Management Library.

So verwenden Sie Watch in Vue So verwenden Sie Watch in Vue Apr 07, 2025 pm 11:36 PM

Mit der Watch -Option in Vue.js können Entwickler auf Änderungen in bestimmten Daten anhören. Wenn sich die Daten ändert, löst sich eine Rückruffunktion aus, um Aktualisierungsansichten oder andere Aufgaben auszuführen. Zu den Konfigurationsoptionen gehören unmittelbar, die festlegen, ob ein Rückruf sofort ausgeführt werden soll, und Deep, das feststellt, ob Änderungen an Objekten oder Arrays rekursiv anhören sollen.

Was bedeutet VUE Multi-Page-Entwicklung? Was bedeutet VUE Multi-Page-Entwicklung? Apr 07, 2025 pm 11:57 PM

VUE Multi-Page-Entwicklung ist eine Möglichkeit, Anwendungen mithilfe des Vue.js-Frameworks zu erstellen, in dem die Anwendung in separate Seiten unterteilt ist: Code-Wartung: Die Aufteilung der Anwendung in mehrere Seiten kann das Verwalten und Wartungsbereich erleichtern. Modularität: Jede Seite kann als separates Modul für eine einfache Wiederverwendung und den Austausch verwendet werden. Einfaches Routing: Die Navigation zwischen Seiten kann durch einfache Routing -Konfiguration verwaltet werden. SEO -Optimierung: Jede Seite hat eine eigene URL, die SEO hilft.

So kehren Sie von Vue zur vorherigen Seite zurück So kehren Sie von Vue zur vorherigen Seite zurück Apr 07, 2025 pm 11:30 PM

VUE.JS hat vier Methoden, um zur vorherigen Seite zurückzukehren: $ router.go (-1) $ router.back () verwendet & lt; Router-Link to = & quot;/& quot; Komponentenfenster.history.back () und die Methodenauswahl hängt von der Szene ab.

So verwenden Sie Vue Traversal So verwenden Sie Vue Traversal Apr 07, 2025 pm 11:48 PM

Es gibt drei gängige Methoden für Vue.js, um Arrays und Objekte zu durchqueren: Die V-für-Anweisung wird verwendet, um jedes Element zu durchqueren und Vorlagen zu rendern; Die V-Bind-Anweisung kann mit V-für dynamisch Attributwerte für jedes Element verwendet werden. und die .MAP -Methode kann Array -Elemente in Neuarrays umwandeln.

Wie man einen Tag zum Vue springt Wie man einen Tag zum Vue springt Apr 08, 2025 am 09:24 AM

Zu den Methoden zum Implementieren des Sprung eines Tags in VUE gehören: Verwenden des A -Tags in der HTML -Vorlage, um das HREF -Attribut anzugeben. Verwenden Sie die Router-Link-Komponente des Vue-Routings. Verwenden Sie dies. $ Router.push () Methode in JavaScript. Parameter können durch den Abfrageparameter weitergeleitet werden, und Routen sind in den Routeroptionen für dynamische Sprünge konfiguriert.

See all articles