У меня CRA-проект здесь . Я не кэширую свой значок, я позволяю обработчику по умолчанию кэшировать его, но я предварительно кэширую резервное изображение, и вы должны иметь возможность сделать то же самое для предварительного кэширования своего значка.
CRA создает sw по умолчанию, который Не думаю, что я коснулся. Чтобы получить больше контроля, я использую рабочую панель в файле sw-addendum, который добавляю к sw по умолчанию в сборке. В приложении вы можете предварительно кэшировать то, что вам нужно, и настроить маршруты, et c.
см. package. json для сценария postdeploy
"postdeploy": "cp src/face.69232788.jpg docs/face.69232788.jpg && cat src/swAddendum.js >> docs/service-worker.js",
sw -дополнение здесь
workbox.precaching.precache([
'./face.69232788.jpg',
]);