Помогите, не могу получить данные с json через axios

100
17 ноября 2021, 06:10

Скажите пожалуйста почему я не могу получить локальные данные с .json файла через axios db.json находится в корне проекта, пытался его переместить в папку public но в функции getEvents() выкидывает ошибку 404 Что я сделал не так?

operation.js

import FetchClient from 'app/utils/FetchClient'; 
import IdsAndByIds from 'app/utils/IdsAndByIds'; 
import { eventsFetch, setEvents } from './actions'; 
 
export const getEvents = () => async (dispatch) => { 
  try { 
    const { data } = await FetchClient.get('./db.json'); 
    dispatch(setEvents(IdsAndByIds(data))); 
    dispatch(eventsFetch(false)); 
  } catch (error) { 
    console.log(error); 
  } 
};

FetchClient.js

import axios from 'axios'; 
import { URL_API } from 'app/config'; //localhost:3009 
 
const FetchClient = () => { 
  const defaultOptions = { 
    baseURL: URL_API, 
    method: 'get', 
    headers: { 
      'Content-Type': 'application/json' 
    } 
  }; 
  const instance = axios.create(defaultOptions); 
  return instance; 
}; 
 
export default FetchClient();

actions.js

import * as types from './types'; 
 
export const eventsFetch = value => ({ 
  type: types.FETCHING_EVENTS, 
  payload: value 
}); 
 
export const setEvents = ({ objById, arrayIds }) => ({ 
  type: types.SET_EVENTS, 
  payload: { 
    eventById: objById, 
    eventsOrder: arrayIds 
  } 
});

Answer 1

Вы обращаетесь напрямую к json файлу, а так вы не получите данные. Для работы с axios нужен запрос на URL.. подключите json-server/https://github.com/typicode/json-server и через него передавайте данные с вашего json файла в компонент использую axios.

READ ALSO
Условия else выдает ошибку javascript?

Условия else выдает ошибку javascript?

Есть такой код внутри функции:

211
Выделение подстроки в строке

Выделение подстроки в строке

В первом промпте я ввожу какой либо текст , во втором символ который нужно найти в этом тексте и подсветитьНайти вот он ищет , а подсветить...

186
Что не так с количством дней?

Что не так с количством дней?

Делаю каскадный dropdown list с параметрами год, месяц, день

301