router.push无效

import Vue from 'vue'
import App from './App'
import VueRouter from './router'

Vue.config.productionTip = false

VueRouter.push('/goods')

/ eslint-disable no-new /
new Vue({
el: '#app',
router: VueRouter,
template: '<App/>',
components: { App }
})

在这里VueRouter.push('/goods')是有效的

import Vue from 'vue'
import Router from 'vue-router'
import goods from '../components/goods/goods'
import seller from '../components/seller/seller'
import ratings from '../components/ratings/ratings'

Vue.use(Router)

/ eslint-disable no-new /
const routes = [
{ path: '/seller', component: seller },
{ path: '/ratings', component: ratings },
{ path: '/goods', component: goods }
]

Router.push('/goods')

export default new Router({
routes
})

在这里的.push无效
不是很明白这里的问题

阅读 5.8k
3 个回答

下面那个改成routes.push

下面那个改成routes.push({path:'/goods'})

新手上路,请多包涵

Router.push('/goods')的调用必须在路由配置成功,并在需要的页面中引用之后,才可以调用。题主你路由输出的是routes,故须在需要使用路由的地方引入,即 import routes from '/路由配置文件',最后才可在引入路由之后的页面中使用相关的api

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题