vue.js - Access router instance from my service -


i create auth service (src/services/auth.js), functions , properties ..

export default {     login() { ... }     ... } 

inside login function, need redirect user

router.go(redirect) 

how can retrieve router instance?


context

in src/main.js file, create router ..

import vuerouter 'vue-router' vue.use(vuerouter) import route './routes' const router = new vuerouter({   history: false,   linkactiveclass: 'active' }) route(router)  const app = vue.extend(require('./app.vue')) 

in src/routers.js map routes

export default function configrouter (router) {     router.map({ .. }) } 

you should export router instance , import auth.js service.

here workaround improvements:

src/routes.js

export default {   '/': {     component: {...}   },   '/about': {     component: {...}   },   ... } 

src/router.js

import vue 'vue' import vuerouter 'vue-router' import routes './routes'  vue.use(vuerouter)  const router = new vuerouter({...})  router.map(routes)  // export router instance export default router 

src/main.js

import router './router' import app './app'  router.start(app, '#app') 

src/services/auth.js

import router '../router'  export default {   login () {     // redirect     router.go('path')   } } 

Comments

Popular posts from this blog

java - Jasper subreport showing only one entry from the JSON data source when embedded in the Title band -

serialization - Convert Any type in scala to Array[Byte] and back -

SonarQube Plugin for Jenkins does not find SonarQube Scanner executable -