1.安装
npm install vue-router --save / cnpm install vue-router --save
2、引入并 Vue.use(VueRouter) (main.js)
import VueRouter from 'vue-router'
Vue.use(VueRouter)
//相当于引入一个工具库 并付给Vue引用
import Vue from 'vue';
import App from './App';
import VueResource from 'vue-resource';
import VueRouter from 'vue-router';
//并使用插件
Vue.use(VueResource);
Vue.use(VueRouter);
new Vue({
el:'#app',
render: h => h(App)
})
3、配置路由
1、创建组件 引入组件
2、定义路由 (建议复制s)
const routes = [
{ path: '/foo', component: Foo },
{ path: '/bar', component: Bar },
{ path: '*', redirect: '/home' } /*默认跳转路由*/
]
3、实例化VueRouter
const router = new VueRouter({
routes // (缩写)相当于 routes: routes
})
4、挂载
new Vue({
el: '#app',
router,
render: h => h(App)
})
5 、根组件的模板里面放上这句话
import Vue from 'vue';
import App from './App.vue';
import VueRouter from 'vue-router';
Vue.use(VueRouter);
//1.创建组件
import Header from './components/Header.vue';
import News from './components/News.vue';
//2.配置路由 注意:名字
const routes = [
{ path: '/header', component: Header },
{ path: '/news', component: News },
{ path: '*', redirect: '/home' } /*默认跳转路由*/
]
//3.实例化VueRouter 注意:名字
const router = new VueRouter({
routes // (缩写)相当于 routes: routes
})
//4、挂载路由
new Vue({
el: '#app',
router,
render: h => h(App)
})
//5 放在 App.vue
头部
新闻
————————————————————————————————————————————————
第一种:在Vue实例中设置
var vm = new Vue({
el:'#rrapp',
data:{
showList: true,
title: null
},
http: {
root: '/',
headers: {
token: token
}
}
})
第二种:全局设置请求头(Main.js)
Vue.http.headers.common['token'] = 'YXBpOnBhc3N3b3Jk';
第三种:在拦截器中设置
Vue.http.interceptors.push((request, next) => {
request.headers.set('token', token); //setting request.headers
next((response) => {
return response
})
})
————————————————————————————————————————————————————
在main.js加入路由
//相当于引入一个工具库 并付给Vue引用
import Vue from 'vue';
import App from './App';
import VueResource from 'vue-resource';
import VueRouter from 'vue-router';
//并使用插件
Vue.use(VueResource);
Vue.use(VueRouter);
Vue.http.headers.common['token'] = 'znjtbril';
//1.创建组件
import header from './components/Header.vue';
import news from './components/News.vue';
import content from './components/Content.vue';
//2.配置路由
const routes = [
{ path: '/header', component: header },
{ path: '/news', component: news },
{ path: '/content/:keyid', component: content }, /* 动态路由 (就是个传值) 重点在这*/
{ path: '*', redirect: '/header' } /*默认跳转路由*/
]
//3.实例化VueRouter
const router = new VueRouter({
routes//引用的上面定义的
})
//4.挂载路由
//把定义好的对象扔进Vue对象里。。
new Vue({
el:'#app',
router,
render: h => h(App)
})
然后再在头部组件 加入跳转到 详情的组件Vue
我是header
//这里是重点
{{key}}*----*{{item}}
然后再去详情界面去看看值
我是详情页面,传过来的Key值为{{keyid}}
{ path: '/content', component: content }
我是header
{{key}}*----*{{item}}
我是详情页面,传过来的Key值为{{keyid}}
我是新闻组件
-
{{item.title}}
{{list.title}}