由于学习的是router1.0的设置方法,但是现在都是支持2.0的,都报错,那些方法没定义,所以只好又来研究一下router2.0.
vue-router2.0对路由的设置有了很大的改变,在HTML中将之前的用a标签link path改成了直接用一个router-link标签,但是你在网页审查元素会发现它还是一个a标签,router-view没有改变,在js中也将原本的router.map 直接改成了一个数组然后在new VueRouter时直接将数组用进去,将之前的挂载由router.start 变成直接用const app = new Vue({ router }).$mount('#app')就可以了。
接下来是摘自官网的内容:
Hello App!
Go to Foo Go to Bar
// 0. 如果使用模块化机制编程,導入Vue和VueRouter,要调用 Vue.use(VueRouter)// 1. 定义(路由)组件。// 可以从其他文件 import 进来const Foo = { template: 'foo' }const Bar = { template: 'bar' }// 2. 定义路由// 每个路由应该映射一个组件。 其中"component" 可以是// 通过 Vue.extend() 创建的组件构造器,// 或者,只是一个组件配置对象。// 我们晚点再讨论嵌套路由。const routes = [ { path: '/foo', component: Foo }, { path: '/bar', component: Bar }]// 3. 创建 router 实例,然后传 `routes` 配置// 你还可以传别的配置参数, 不过先这么简单着吧。const router = new VueRouter({ routes // (缩写)相当于 routes: routes})// 4. 创建和挂载根实例。// 记得要通过 router 配置参数注入路由,// 从而让整个应用都有路由功能const app = new Vue({ router}).$mount('#app')// 现在,应用已经启动了!
接下来是我自己在项目中的设置:
import Vue from 'vue';import App from './App';import VueRouter from 'vue-router';import goods from 'components/goods/goods';import ratings from 'components/ratings/ratings';import seller from 'components/seller/seller';Vue.use(VueRouter);// Vue.config.productionTip = false;// 定义路由const routes = [ {path: '/goods', component: goods}, {path: '/ratings', component: ratings}, {path: '/seller', component: seller}];// 创建 router 实例,然后传 `routes` 配置const router = new VueRouter({ routes // 所写相当于routes:riutes});// 创建和挂载根实例。new Vue({ router, ...App}).$mount('#app');// 让其一开始指向/goodsrouter.push('/goods');
商品 评论 商家
总的来说,设置路由还是很麻烦的,而且我这还只是最初的最简单的设置,后面还要更加深入