Как использовать функцию require.context (), встроенную в create-Reaction-app и развернутое приложение React - PullRequest
0 голосов
/ 01 апреля 2020

Я разрабатываю приложение с React и на сервере dev в одном из своих компонентов. Я использую функцию require.context (), чтобы получить все изображения из указанного c местоположения и перевести все это в состояние компонента, например:

componentDidMount = () => {
    const req = require.context(
      '../../../../../public/images/news/',
      true,
      /.*\.(jpeg|jpg|png)$/
    );
    req.keys().forEach((key, index) => {
      req(key);

     if (key.includes(this.props.date)) {
        let newImages = this.state.images;
        newImages[index] = req(key);

        this.setState({ images: fixImages(newImages) });
      }
    });

затем я использую эти изображения в галереях, и они отлично работают.

Проблема в том, что при запуске процесса сборки образы меняют свое местоположение на: build / images / news. Когда я копирую содержимое папки компоновки на FTP-сервер, очевидно, что изображения не видны, потому что путь неверен, я думаю.

Я, конечно, пытался изменить путь, но процесс сборки невозможен, потому что новый путь неверен.

Есть ли способ заставить его работать? Может быть, есть другой лучший способ получить все картинки из папки с изображениями на FTP-сервере и разделить их по именам папок внутри?

Случай, в котором я ищу способ, например, скопировать папку 1.01.2020 в папку изображений на FTP, причем некоторые содержат изображения, чтобы показать ее на странице сразу или после перезагрузки страницы.

...