在 Vue 项目中,使用 axios 读取本地的 JSON 文件可以通过将 JSON 文件放置在 public 目录中,然后通过 axios 发起请求读取。
步骤:
-  将 JSON 文件放置在 public目录下:- Vue 项目中的 public目录是静态资源目录,项目编译后这些文件可以通过 URL 直接访问。
- 将你的 JSON 文件,比如 data.json,放在public目录中。
 
- Vue 项目中的 
-  使用 axios读取 JSON 文件:- 在你的 Vue 组件中,通过 axios发起 GET 请求来读取 JSON 文件。
 
- 在你的 Vue 组件中,通过 
示例:
假设你有一个 data.json 文件,内容如下:
{
  "name": "John Doe",
  "age": 30,
  "email": "johndoe@example.com"
}
将这个文件放在 public/data.json 目录下。
然后在 Vue 组件中,使用 axios 读取文件:
<template>
  <div>
    <h1>User Info</h1>
    <p>Name: {{ userInfo.name }}</p>
    <p>Age: {{ userInfo.age }}</p>
    <p>Email: {{ userInfo.email }}</p>
  </div>
</template>
<script>
import axios from 'axios';
export default {
  data() {
    return {
      userInfo: {}
    };
  },
  mounted() {
    this.fetchUserData();
  },
  methods: {
    fetchUserData() {
      // 读取 public 目录下的 data.json 文件
      axios.get('/data.json')
        .then(response => {
          this.userInfo = response.data;
        })
        .catch(error => {
          console.error('Error fetching the JSON file:', error);
        });
    }
  }
};
</script>
解释:
- 文件路径:因为 public目录中的文件会映射到根目录,访问public/data.json相当于请求/data.json。
- axios.get('/data.json'):这是对项目根目录下的- data.json文件发起 GET 请求的方式。
注意事项:
- 开发环境与生产环境:在开发环境下,Vue 开发服务器会将 public目录的内容映射为静态文件路径。在生产环境中,构建后的静态文件也会放置在根目录中。
- 文件位置:确保 JSON 文件位于 public文件夹中,否则无法通过 URL 直接访问项目文件。










