数据获取问题

来源:17-11 shopcart购物车组件(3)

天羽狩

2019-01-02

老师您好,我遇到几个数据传递方面的问题:
一、

apiRoutes.get('/seller', function (req, res) {
	res.json({
		errno: 0,
		data: seller
	});
});

老师,我和您的代码一样,接口都是像上面这么写的,可是引用数据的时候有出入,您是可以直接通过 seller.supports等等方式获取数据,但是我这样是获取不到的,必须要通过 seller.data.supports 这种方式获取,我直接在浏览器里面访问接口也是出现以下的内容:

{
errno: 0,
data: [
	{
		name: "热销榜",

所以您为什么可以直接通过 seller.name 等方式获取数据呢??

二、
在 goods.vue 中,遇到个很奇葩的问题,就是我必须要写以下的代码才能获取 /api/goods 接口的数据

props: {
      seller: {
        type: Object
      },
      goods: {
        type: Object
      }
    },

我觉得很奇怪,明明是在goods.vue中直接通过 this.$http.get 的方式访问 /api/goods 接口的方式获取到数据,为什么要加一层数据传递呢?good.vue 的父组件App.vue没有对 /api/goods 接口做任何访问,如果我把 goods: { type: Object } 这行代码删除的话,页面上就显示不了数据,加上这行代码就正常,您知道大概是为什么吗?

三、
图片描述

我的浏览器一直都在报错,但是页面显示是正常的,然后我也向组件传递了数据:

<header :seller="seller.data"></header>
写回答

3回答

ustbhuangyi

2019-01-03

我看你请求库用的还是 vue-resource,vue 版本还是 1.x
//img.mukewang.com/szimg/5c2dda7c0001f29e12220366.jpg
所以数据获取这块你就有问题,建议去对比我 1.0 的代码 https://github.com/ustbhuangyi/vue-sell/tree/1.0

另外,视频现在已经用新版本重录了,建议去学习 2.5.x 的视频吧,旧视频过一遍即可,不建议再跟着做了喔~

0
1
天羽狩
谢谢老师
2019-01-04
共1条回复

ustbhuangyi

2019-01-03

具体贴一下你的代码吧

0
1
天羽狩
https://github.com/raffaelelucifer/vue-sell/tree/master/sell 老师,这是我的代码地址,麻烦您了。 然后上次说的那个页面联动不生效的问题也还存在,点击左侧的menu可以实现右侧的页面联动,但是滚动右侧的foodsmenu时左侧的menu没有反应。比对了很久的源码也没发现问题。
2019-01-03
共1条回复

ustbhuangyi

2019-01-03

需要考虑初始数据的情况吧,在数据请求前,你的初始数据是 undefined,然后执行 undefined.xxx 肯定会报错

0
2
天羽狩
而且我在App.vue中有这样初始化数据的
2019-01-03
共2条回复

Vue.js2.5+cube-ui重构饿了么App(经典再升级)

掌握Vue1.0到2.0再到2.5最全版本应用与迭代,打造极致流畅的WebApp

9868 学习 · 4162 问题

查看课程