Я создаю приложение ReactJS с помощью утилиты create-Reaction-app. Как я могу настроить его на использование файла, который будет содержать работника службы?
EDIT: Со стороны Javascript для меня все понятно, добавьте регистрацию в мой index.js:
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('./service_workers/sw.js')
.then(function(registration) {
// Registration was successful...
}).catch(function(err) {
// registration failed ...
});
}
Затем моя конфигурация в моем файле рабочего сервиса (который для меня находится в service_wokers/sw.js):
self.addEventListener('install', function(event) {//my code here...});
self.addEventListener('activate', function(event) {//my code here...});
self.addEventListener('fetch', function(event) {//my code here...});
Когда я запускаю это, консоль показывает: Ошибка регистрации ServiceWorker: DOMException: не удалось зарегистрировать ServiceWorker: при получении сценария получен неверный код ответа HTTP (404).
Файл отсутствует, так как я не настраиваю Webpack для этого. Поэтому я пытаюсь скопировать файл sw.js с выводом с помощью:
test:
/\.(js)$/,
loader: "file?name=[path][name].[ext]&context=./service_workers",
include: '/service_worker'
Думаю, нет необходимости говорить, что я новичок в Webpack.