router-link结合v-for使用(跳转详情)
2020-08-24 22:28
971 查看
router-link结合v-for使用:
今天实现列表页跳转到详情页 我没有用编程式导航 用的router-link实现跳转
<template> <div class="jingpin"> <div class="jingpinclass">{{battleList[1].channel_info.name}}</div> <router-link class="jingpinbox" v-for="(ele,index) in battleList[1].list" :key="index" :to="{path:'/jingpinDetail',query:{id:ele.id}}" tag="div"><p class="jingpintitle">{{ele.title}}</p> <p class="classnumber">共{{ele.total_periods}}课时</p> <div class="imgfont"> <p class="classimg"> <img :src="ele.teachers_list[0].teacher_avatar" alt /> </p> <p class="classname">{{ele.teachers_list[0].teacher_name}}</p> </div> <div class="people"> <p class="peoplename">{{ele.sales_num}}人已报名</p> <p class="price">{{ele.price|price}}</p> </div> </router-link> </div> </template> <script> import { getBattle } from "../http/api"; import "../assets/jingpin/jingpin.scss"; export default { name: "teacher", data() { return { battleList: [] }; }, created() { this.getJingpin(); }, methods: { getJingpin() { getBattle().then(res => { // console.log(res.data.data); this.battleList = [...res.data.data]; console.log(this.battleList[1]); }); } } }; </script> <style lang="scss" scoped> </style>
直接path后面写详情路径,query后面写参数,tag让router-link它变成div (默认是a标签)
<router-link class="jingpinbox" v-for="(ele,index) in battleList[1].list" :key="index" :to="{path:'/jingpinDetail',query:{id:ele.id}}" tag="div">
注意api里面封装的 接口要传递的参数
// 精品课程详情 export function getjingpindetail({id}){ return request({ url:`/courseInfo/basis_id=${id}`, method:"GET", data:{ basis_id:id } }) }
这个是跳转的详情页面 接住上面传过来的参数
<template> <!-- 精品课程详情 --> <div class="getjingpindetail"> 精品课程详情 </div> </template> <script> import { getjingpindetail } from "../http/api"; export default { name:"getjingpindetail", data(){ return{ } }, created(){ this.getjingpindetail() }, methods:{ getjingpindetail(){ getjingpindetail({ id:this.$route.query.id }).then(res =>{ console.log(res) }) } } } </script>
这样就没毛病了。
说一下今天遇到的这个bug,我的页面头像框和手机号不渲染
其实就是设置header请求头的问题
//请求拦截 service.interceptors.request.use( config => { // 设置请求头 config.headers["deviceType"] = ["H5"]; config.headers.authorization = localStorage.getItem("token") // config.headers["deviceType"] = ["H5"]; // console.log("请求的数据:", config); return config; }, // error => { // return Promise.reject("出错啦"); // } );
请求头设置好就没问题了
相关文章推荐
- Vue 单页内使用router-link跳转,动态使用router.push()实现页内跳转,跳转到其他组件
- 在vue中无论使用router-link 还是 @click事件,发现都没法从列表页点击跳转到内容页去
- vue中router-link传参(商品从列表页到具体详情页跳转)
- react-router带参数使用Link跳转并取出参数
- 记录一个router-link和v-for联合使用的坑
- 如何使用router-link跳转时改变tab的颜色,
- 阿里飞冰使用Link路由跳转报错之“react-router”与“react-router-dom”
- react-router HashRouter和BrowserHistory的区别, 以及配置、使用, Link跳转传参等等
- c++11 for_each结合lambda表达式的使用 高效优雅的代码 有代码有真相
- JAVA循环结合标签使用,控制跳转
- Vue 爬坑之路(三)—— 使用 vue-router 跳转页面
- JAVA循环结合标签使用,控制跳转
- Vue 爬坑之路(三)—— 使用 vue-router 跳转页面
- vue,router-link传参以及参数的使用
- vue中使用vue-awesome-swiper做轮播 ,手动滑动、vue-router路由跳转和动态更新数据,导致自动轮播失效问题
- Go 语言中Select与for结合使用时可能会遇到的坑
- vue,router-link传参以及参数的使用
- router-link的学习使用
- vue,router-link传参以及参数的使用
- vue使用router-link :to="{path:'/index'}"传参以及参数的使用