vue/cli 3.0 beta使用axios无法获取

发布于 2022-09-06 15:36:05 字数 811 浏览 11 评论 0

1.代码
created: function() {

this.axios
  .get("/src/assets/Merch.json")
  .then(response => {
    let Merchs = response.data.Merch;
    /*      this.answers = response.topic_answer; */
    console.log(this.answers);
    console.log(Merchs);
  })
  .catch(error => {
    console.log(error);
  });
  

2.问题提示
xhr.js?ec6c:178 GET http://localhost:8080/src/assets/Merch.json 404 (Not Found)
Error: Request failed with status code 404

at createError (createError.js?16d0:16)
at settle (settle.js?db52:18)
at XMLHttpRequest.handleLoad (xhr.js?ec6c:77)
  
  vue-cli 2.X版本可以,换到3.0就会遇到这个问题,求大神解释一下

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

时光暖心i 2022-09-13 15:36:06

vue/cli 3和之前的架构不一样了,有点类似于create-react-app脚手架的组织方式。
如果你是相对路径引入的话,webpack会帮你处理,官方也建议使用相对路径。
绝对路径的的话,相关文件需要放到public目录下。

clipboard.png

旧城空念 2022-09-13 15:36:06

把 Merch.json 文件放到 static 目录下,然后

axios.get('http://localhost:8080/static/Merch.json')
清秋悲枫 2022-09-13 15:36:06

错误信息是路径找不到,就是路径写错了,vue开发环境和生产环境下资源路径会发生改变,具体要看你的项目结构是怎样的。

一般都是放在static下

axios.get('/static/...')
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文