#angular #progressive-web-apps
#angular #прогрессивные веб-приложения
Вопрос:
[Angular PWA] Я использую приведенный ниже код для принудительной перезагрузки новой версии после развертывания. Однако это не работает, он по-прежнему загружает старый код. Кто-нибудь может помочь мне решить проблему?
После того, как я разверну код на сервере. На клиенте (браузеры) я нажимаю на кнопку, чтобы вызвать приведенный ниже код.
this.updates.activateUpdate().then(() => document.location.reload());
Спасибо
Комментарии:
1. Можете ли вы предоставить полный код?
Ответ №1:
Возможно, вы захотите рассмотреть возможность использования —output-hashing при выполнении сборки через angular cli, что также позволит выполнить чистое обновление для всех приложений PWA.
Ознакомьтесь https://angular.io/cli/build для получения более подробной информации.
Комментарии:
1. Спасибо за ваш ответ, @maxkart. Я использовал приведенную ниже команду для выполнения «npm run buildProd». В файле package.json «buildProd»: «узел —max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng сборка —конфигурация=производство —aot —Вывод данных= все». Тем не менее, я все еще получаю старый код после развертывания/
2. можете ли вы попробовать «ng build —prod —output-hashing =all»
3. @ThanhVietNguyen, ты разобрался в этом? Я также использую хэширование, и мое приложение не загружает новый код с помощью location.reload()
4. то же самое здесь, не могу увидеть изменения с
ng build amp;amp; http-server -p 8080 -c-1 dist
любыми предложениями, пожалуйста