时间:2021-05-26
1.先在router.js中配置路由
{ path: '/movieDetail/:movieId', name: 'movieDetail', component:movieDetail }2.获取详情页的id,并派发父组件事件(movieList.vue)页面
<li v-for="(item,index) in movies" :key="index" @click="selectItem(item)"> 。。。。。。。 </li>methods:{ selectItem(item){ //console.log(item.moveId); //var item = item.moveId; this.$emit('select',item); }3.在movieShow页面引用movieList.vue页面
<movieList :movies="movies" @select="movieDetail"></movieList> //转入电影详情页 movieDetail(item){ console.log(`${item.moveId}`); this.$router.push({ path: `/movieDetail/${item.moveId}` }) }效果如下:
上面获取到了 id,接下来实现详情页通过id获取数据
1)先获取传过来的id
var movieId = that.$route.params && that.$route.params.movieId;2)引用豆瓣网的API
/v2/movie/subject/:id单个电影条目信息
const url = `api/movie/subject/${movieId}`; that.$axios.get(url) .then((res)=>{ console.log(res.data); })效果如下
3)在页面中引用
<scroll class="movie-detail" :data="movieDetail" > 。。。。。。 </scroll>在js中将movieDetail进行赋值 movieDetail = res.data
data(){ return { movieDetail:{} } }, created(){ this._getDateil(); }, components:{ scroll }, methods:{ _getDateil(){ var that = this; var movieId = that.$route.params && that.$route.params.movieId; console.log(movieId); //that.getMovieDetail(movieId); const url = `api/movie/subject/${movieId}`; that.$axios.get(url) .then((res)=>{ console.log(res.data); movieDetail = res.data; }) },以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1.列表页:列表页带id跳转到详情页详情页:把id传回到后台就可以获取到数据了2.列表页跳转到详情页并更改详情页的标题列表页:带id和页面标题的typeid跳转
vue中,我们所要实现的一个场景就是:1.搜索页面==>到搜索结果页时,搜索结果页面要重新获取数据,2.搜索结果页面==>点击进入详情页==>从详情页返回列表页
需求一:在一个列表页中,第一次进入的时候,请求获取数据。点击某个列表项,跳到详情页,再从详情页后退回到列表页时,不刷新。也就是说从其他页面进到列表页,需要刷新获
引入在使用vue+vue-router开发SPA的时候,有没有遇到过这样的情况:当我们在列表页和详情页之间切换的时候,如果列表页不做缓存,会导致每次从详情页返回
亲,热区模块设置后消费者通过无线宝贝详情页点击您设置的热区的图片会自动跳转到对应关联宝贝详情页的功能。温馨提示:1.只能填写宝贝ID,无法超链到非宝贝链接2.选