fetch获取本地json文件问题

9 篇文章 0 订阅

写这个博客主要目的是有必要警醒一下自己,当然如果有其他猿有看到或许也能帮助下您。(也许其它大神在就知道了,恕小弟无知,才刚刚开窍)。

问题很简单:上码( header.jsx)

fetchSelData = () => {
        fetch('../data/selectData.json')
            .then((res) => {return res.json(); })
            .then((data) => {alert(JSON.stringify(data));this.setState({selV:data.obj});})
            .catch((e) => {console.log(e.message); });
    }    

上面是我用fetch获取本地的一个json文件,声明代码是没问题的。然后我的本地文件是放在在这个:


印象中“../”一直表示的是上一级,然而这里的上一级不是从header.jsx开始的。一直以为路径是没有问题的。故运行起来。但不幸的是报错了:


上面报的是json数据格式的有问题,所以就去看是不是数据的问题,json数据测试来测试去都没问题呀……就这样花费几个小时浪费在json数据上还有fetch版本上,最后不得已找了个远程数据来测试,是可以显示的。那问题就很明显了,报错的原因是找不到路径从而解析数据出错。

经过网上一番好找终于找到答案了。

原因就是这个里的“../”是相对你的首页index.html而言的。所以将json数据放在相对index.html上问题就解决了。


  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值