Vue应用篇—读取本地geojson文件 ( Input data given to 'glasgow' is not a valid GeoJSON object )

在Vue项目中使用Mapbox时遇到导入本地GeoJSON文件失败的问题,错误提示为404。经检查,文件格式正确且URL无误。通过分析错误发现,原因在于localhost无法读取非public目录下的文件。解决方案是将GeoJSON文件移至public目录下,以确保静态资源能被正确加载,从而避免webpack的打包处理导致的路径问题。
摘要由CSDN通过智能技术生成

在应用mapbox的时候,想要导入自己的geojson文件,一直遇到bug

当前文件路径是:components/map/index.vue, 在这个index.vue文件里我addSource了一个geojson的文件,我确认这个文件的格式是对的,在github上可以正常显示:
在这里插入图片描述
并确定这个addSource的格式正确,图是官方案例
官方案例
但是我自己咋npm run serve之后,但是在它console.log报了一个错:status: 404, url: “http://localhost:8080/glasgow.geojson”, name: “e”, message: “Not Found”
报错
为啥啊?url的路径也没写错啊?各种谷歌与询问朋友之后,终于找到了问题所在。

仔细看报错内容:status: 404, url: “http://localhost:8080/glasgow.geojson”, name: “e”, message: “Not Found”,确认是由于是路径问题,localhost读不出来geojson文件,localhost如此只能将json文件放入public文件夹中,vue-cli 3.0静态文件放在public目录下面,放在public目录下的资源会被直接复制,不会经过webpack的打包处理。所以把geojson文件放在public下面就行了(应该是vue webpack配置的问题)

最终解决方案:
在这里插入图片描述

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值