vue 列表页跳转详情页获取id以及详情页通过id获取数据


Posted in Javascript onMarch 27, 2019

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}`
       })
     }

效果如下:

vue 列表页跳转详情页获取id以及详情页通过id获取数据

上面获取到了 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);
 })

效果如下

vue 列表页跳转详情页获取id以及详情页通过id获取数据

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;
    })
   },

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
onmouseover和onmouseout的一些问题思考
Aug 14 Javascript
java和javascript获取word文档的书签位置对比
Jun 19 Javascript
关于axios不能使用Vue.use()浅析
Jan 12 Javascript
使用淘宝镜像cnpm安装Vue.js的图文教程
May 17 Javascript
一个简单的node.js界面实现方法
Jun 01 Javascript
webstorm中配置Eslint的两种方式及差异比较详解
Oct 19 Javascript
详解JavaScript中typeof与instanceof用法
Oct 24 Javascript
详解vue 不同环境配置不同的打包命令
Apr 07 Javascript
微信小程序如何实现radio单选框单击打勾和取消
Jan 21 Javascript
keep-alive不能缓存多层级路由菜单问题解决
Mar 10 Javascript
Js和VUE实现跑马灯效果
May 25 Javascript
js实现弹幕墙效果
Dec 10 Javascript
js取0-9随机取4个数不重复的数字代码实例
Mar 27 #Javascript
vue 详情跳转至列表页实现列表页缓存
Mar 27 #Javascript
vue中多个倒计时实现代码实例
Mar 27 #Javascript
JavaScript偏函数与柯里化实例详解
Mar 27 #Javascript
vue实现鼠标移入移出事件代码实例
Mar 27 #Javascript
JavaScript惰性载入函数实例分析
Mar 27 #Javascript
微信小程序实现获取准确的腾讯定位地址功能示例
Mar 27 #Javascript
You might like
Php+SqlServer实现分页显示
2006/10/09 PHP
php 生成随机验证码图片代码
2010/02/08 PHP
PHP性能优化工具篇Benchmark类调试执行时间
2011/12/06 PHP
PHP入门教程之数学运算技巧总结
2016/09/11 PHP
javascript dom 操作详解 js加强
2009/07/13 Javascript
jquery ajax 简单范例(界面+后台)
2013/11/19 Javascript
jquery prop的使用介绍及与attr的区别
2013/12/19 Javascript
js和jquery中循环的退出和继续学习记录
2014/09/06 Javascript
Javascript基础知识(二)事件
2014/09/29 Javascript
jQuery中outerWidth()方法用法实例
2015/01/19 Javascript
Javascript 完美运动框架(逐行分析代码,让你轻松了运动的原理)
2015/01/23 Javascript
JavaScript实现添加及删除事件的方法小结
2015/08/04 Javascript
基于jQuery实现的双11天猫拆红包抽奖效果
2015/12/01 Javascript
JS自定义函数实现时间戳转换成date的方法示例
2017/08/27 Javascript
Chrome调试折腾记之JS断点调试技巧
2017/09/11 Javascript
利用Javascript开发一个二维周视图日历
2017/12/14 Javascript
vue2.0使用swiper组件实现轮播的示例代码
2018/03/03 Javascript
Vue中使用wangeditor富文本编辑的问题
2021/02/07 Vue.js
[03:17]DOTA2英雄基础教程 剧毒术士
2013/12/12 DOTA
Python 获得13位unix时间戳的方法
2017/10/20 Python
python 实现矩阵上下/左右翻转,转置的示例
2019/01/23 Python
django框架模板语言使用方法详解
2019/07/18 Python
pandas 缺失值与空值处理的实现方法
2019/10/12 Python
python中68个内置函数的总结与介绍
2020/02/24 Python
django API 中接口的互相调用实例
2020/04/01 Python
python实现处理mysql结果输出方式
2020/04/09 Python
Jupyter notebook如何实现指定浏览器打开
2020/05/13 Python
Tensorflow与Keras自适应使用显存方式
2020/06/22 Python
mac系统下安装pycharm、永久激活、中文汉化详细教程
2020/11/24 Python
Python爬虫+tkinter界面实现历史天气查询的思路详解
2021/02/22 Python
HTML5 input新增type属性color颜色拾取器的实例代码
2018/08/27 HTML / CSS
应届毕业生个人自我评价
2013/09/20 职场文书
配件采购员岗位职责
2013/12/03 职场文书
2014年财务工作总结范文
2014/11/11 职场文书
中小学生安全教育观后感
2015/06/17 职场文书
《我的长生果》教学反思
2016/02/20 职场文书