Слишком поздно, чтобы быть правдой, но только для будущих гуглеров:
Похоже, информация в image-webpack-loader вводит в заблуждение.Он может оптимизировать уже существующий файл webp, чтобы уменьшить его размер.
Хотя предыдущее утверждение может быть верным или нет, я не выяснил, как преобразовать изображения в webp с помощью этого загрузчика.
Вместо этого я использовал imagemin-webp для генерации webps, а затем просто импортировал его в файл, передавая его через image-webpack-loader & file-loader.
Итак, конечный результат был похож на:
import React from "react";
import waveImgJpg from "Images/common/wave.jpg";
import waveImgWebP from "Images/webp/wave.webp";
import styles from "IndexStyles/mainContent.scss";
export const MainContent = () => {
return (
<picture>
<source className={styles.waveImg} srcSet={waveImgWebP} type="image/webp" />
<img className={styles.waveImg} src={waveImgJpg} alt="beatiful wave" title="beatiful wave" />
</picture>
);
};
Этот код является частью настройки, которую я использую для запуска новых проектов с уже установленным конфигом.
Так что, если вам интересно, вы можете найти полный webpack.js кака также все остальные файлы здесь .