【发布时间】:2020-10-28 16:10:20
【问题描述】:
vue-router 运行良好,但我们想将路由推送到另一个文件中。一些代码需要澄清:
// src/router/index.ts
import { route } from 'quasar/wrappers'
import VueRouter from 'vue-router'
import routes from './routes'
export default route(function ({ Vue }) {
Vue.use(VueRouter)
const Router = new VueRouter({
scrollBehavior: () => ({ x: 0, y: 0 }),
routes,
mode: process.env.VUE_ROUTER_MODE,
base: process.env.VUE_ROUTER_BASE,
})
return Router
})
如果能像这样在另一个文件中调整路线就好了:
// src/services/auth/authService.ts
import router from 'src/router'
if (router.currentRoute.path === '/login') {
console.log('authService push to /');
router.push('/')
}
但这会引发错误:
TS2339:“RouteCallback”类型上不存在属性“currentRoute”。
我们可能没有正确导出/导入路由器。
【问题讨论】:
-
您需要通过
this.$route引用它
标签: javascript typescript vue.js vue-router quasar-framework