如何使用操作和 axios.get() (Redux) 从本地 json 文件获取数据?

How to get data from local json file using actions and axios.get() (Redux)?

我写了 Action,应该从 db.json 文件中获取数据。但是

Error: message "xhr.js:178 GET http://localhost:8083/data/db.json 404 (Not Found)".

如果我的路径正确(db.json 在同一个文件夹中),为什么会这样?在 profileActions.js:

import axios from "axios";
var customData = require('./db.json');

export function fetchUsers(){
    return function(dispatch){
        axios.get('./db.json')
            .then((response) => {
                dispatch({type:'FETCH_USERS_FULFILLED', payload:response.data});
            })
            .catch((err) => {
                dispatch({type:'FETCH_USERS_REJECTED', payload:err});
            })
    }
}

我遇到了类似的问题 before.I 通过 create-react-app 创建我的 react 应用 command.And 发现你只能从 public folder.If 你想得到 "db.json",你应该把 "db.json" 放到 public 文件夹中。

我知道这个问题很久以前就有答案了。它会帮助像我这样的人。您可以直接导入 json 文件,而不是使用 axios 或其他网络库,如下所示,并在调度程序中导入 return 文件。如果您使用本地 json 来测试它,为什么您需要网络库。

import data from './response.json'

export function initializeApp() {
  return function (dispatch) {
    dispatch({
      type: ActionTypes.ActionName,
      payload: data
    });

  }
}