Vue JS маршрутизация проблема - поведение прокрутки не работает правильно - PullRequest
0 голосов
/ 11 февраля 2019

У меня есть сайт на основе Vue, где я использую Vue Router, но у меня есть некоторые проблемы с ним.То, что я пытаюсь создать, - это когда пользователь нажимает кнопку, по которой он возвращается на первую страницу к определенной привязке.

Я пытался использовать сборку Vue в Scroll Behavior, но она не работает, толькопереходит обратно на главную страницу, но не к конкретной привязке.

Я также пытался решить эту проблему следующим образом: https://dev.to/napoleon039/the-lesser-known-amazing-things-vuerouter-can-do-25di

Вот мой файл маршрутизатора:

import Vue from 'vue'
import VueRouter from 'vue-router'
import home from '@/components/home'
import works from '@/components/works'

Vue.use(VueRouter)

export default new VueRouter({
    mode: 'history',
    routes: [
        {
            path: '/',
            name: 'home',
            component: home
        },
        {
            path: '/works',
            name: 'works',
            component: works
        },
    ],
    scrollBehavior(to, from, savedPosition) {
        if (savedPosition) {
            return savedPosition
        }
        if (to.hash) {
            return { selector: to.hash }
        }
        return { x: 0, y: 0 }
    }
})

Это то, как я использую ссылку маршрутизатора:

<router-link :to="'/#main-page'">

Я также попробовал этот способ:

<router-link :to="{ path: '/', hash:'#main-page' }">

И здесь я хочу перейти:

<section class="intro" id="main-page">
  <div class="intro--left">
    <img />
  </div>
</section>

1 Ответ

0 голосов
/ 19 февраля 2019

Просто добавьте параметры в nuxt-ссылку: to = или this. $ Router.push () вот так:

{ path: '/something', params: { foo: 'bar'}}
...