vuejs:有没有办法在组件内部访问router.go()?

Ani*_*ruz 17 vue.js

我想调用router.go一个组件

目前我已设置window.router = router//所以代码有效

index.js

const App = Vue.extend(require('./views/app.vue'))
router.start(App, '#app')
window.router = router // I don't want to set this global variable
Run Code Online (Sandbox Code Playgroud)

navbar.vue

methods: {
        search () {
            window.router.go({
                name: 'search',
                query: { q: this.query }
            })
        }
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找的东西是这样的, this.$router.go

navbar.vue

methods: {
        search () {
            this.$router.go({
                name: 'search',
                query: { q: this.query }
            })
        }
    }
Run Code Online (Sandbox Code Playgroud)

谢谢,真的很感激一些帮助

Bil*_*ell 42

对于vue-router2.x.

this.$router.push('path')
Run Code Online (Sandbox Code Playgroud)

对于vue-router1.x

this.$route.router.go('path')
Run Code Online (Sandbox Code Playgroud)