Приветствую, мне не понятно как соединить декомпозированную логику проекта на react

Для начала есть множество api запросов, у всех у них один корневой сервер пример:

fetch('http://localhost:8000/articles')
            .then(res => res.json())
            .then(
                (result) => {
                    this.setState({
                        isLoaded: true,
                        items: result,
                    })
                }

И я понимаю, что бегать по разным документам и менять url в продакшне это долго, есть ли способ написать один url, и импортировать его во все api запросы?


Ответы (1 шт):

Автор решения: Избыток Сусликов

Есть npm пакет dotenv и он включен в react-scripts начиная с версии 0.9.0

Документация

  1. Добавьте .env файл в корень проекта
  2. Имя глобальных переменных должна начинаться с REACT_APP_

.env

REACT_APP_BASE_URL=http://localhost:3000

App.js

fetch(`${process.env.REACT_APP_BASE_URL}/articles`)
            .then(res => res.json())
            .then(
                (result) => {
                    this.setState({
                        isLoaded: true,
                        items: result,
                    })
                }
→ Ссылка