Используйте Webpack для преобразования и сохранения файла изображения

#javascript #node.js #reactjs #webpack #webpack-loader

Вопрос:

Я использую React в течение определенного периода времени, и мне очень нравится функция просмотра файлов, предоставляемая загрузчиками webpack. Я также написал несколько простых загрузчиков для своих нужд, но теперь мне предстоит решить немного сложную задачу.

Ну, в проекте есть несколько двоичных файлов, которые я загружаю в React с помощью пользовательского загрузчика webpack, а также он генерирует некоторые промежуточные данные (предварительный просмотр изображений), которые я хочу сохранить в файл для использования со сторонними инструментами (например, редактор изображений). Я бы хотел, чтобы это изображение предварительного просмотра восстанавливалось каждый раз при изменении исходных файлов — загрузчик webpack может справиться с этим с помощью опции просмотра файлов, это здорово!

Но мой вопрос в следующем: является ли это правильной задачей для webpack? Или, может быть, мне следует использовать другой инструмент на основе js? Могу ли я организовать цепочку загрузки веб-пакетов таким образом, чтобы файлы, созданные одним загрузчиком и СОХРАНЕННЫЕ/ОБНОВЛЕННЫЕ на диск, были немедленно загружены другим загрузчиком веб-пакетов?

Я не могу найти никаких примеров для этого в СЕТИ, поэтому, если вы знаете, как это сделать, пожалуйста, дайте мне идею.

Спасибо!

P.S. Итак, приложение react должно выглядеть так

FILESET1 -> webpack-loader1 -> PREVIEW_IMAGE_TO_DISK -> result is accessible as js object in react

PREVIEW_IMAGE_FROM_DISK -> webpack-loader2 -> result accessible as js object in react

Я знаю о возможности цепочки загрузчиков webpack, но все дело в объектах js в памяти. Мне нужна обработка файлов, потому что «webpack-loader2» работает с файлами, а не с объектами js.

пфф.. Надеюсь, это ясно.

Комментарии:

1.Вы можете использовать sharp для этого, у меня есть какой-то хитрый способ сделать это в этой котельной. Посмотрите на файлы package.json convert.js build_config/aliases.config.js и jsconfig.json увидите абсолютно все, что я делаю для преобразования изображений npm develop (в последних двух просто укажите некоторые псевдонимы для папки изображений). Однако In не преобразуется при запуске производственного режима, только когда вы начинаете разработку

2. @Sam Привет, преобразование изображений не является проблемой. На самом деле, я могу создать изображение с помощью myscript, что не является простым преобразованием. В любом случае. Основная проблема заключается в том, чтобы использовать Webpack для создания промежуточных файлов, которые я считаю неправильными (или нет?)

3.Вы можете попробовать написать свой собственный загрузчик, который использует myscript webpack.js.org/contribute/writing-a-loader

4. @Sam Да, я думаю об этом подходе. Как вы думаете, это нормальная практика в React? У вас есть какие-нибудь примеры?

5. Я этого не делаю, это было то, что я давно хотел сделать