PWA化するためにserviceworkerをinstallしたのですが、その後本番環境で確認すべく、git push heroku masterコマンド実行しました。
そうすると、以下のようなエラーがでました。
エラー内容
remote:ExecJS::RuntimeError: SyntaxError: Unexpected token: name (CACHE_VERSION) remote:JS_Parse_Error.get ((execjs):3538:621) 以下省略 remote: ! Precompiling assets failed.
CACHE_VERSIONというのは、service_workerの設定ファイルをインストールした際にできた、serviceworker.js.erbファイル内に記載されています。
serviceworker.js.erbの現在のコード
function onActivate(event) { console.log('[Serviceworker]', "Activating!", event); event.waitUntil( caches.keys().then(function(cacheNames) { return Promise.all( cacheNames.filter(function(cacheName) { // Return true if you want to remove this cache, // but remember that caches are shared across // the whole origin return cacheName.indexOf(CACHE_VERSION) !== 0; }).map(function(cacheName) { return caches.delete(cacheName); }) ); }) ); }
いろいろとググって、config/environment/production.rb内のconfig.assets.js_compressor = :uglifierをconfig.assets.js_compressor = Uglifier.new(harmony: true)に変えたりしたのですがエラーが解消できません。もし、エラー解消方法がお分かりになれば教えて頂ければと思います。
config/environment/production.rbの現在のコード
# Compress JavaScripts and CSS. config.assets.js_compressor = :uglifier config.assets.js_compressor = Uglifier.new(harmony: true) # config.assets.css_compressor = :sass # Do not fallback to assets pipeline if a precompiled asset is missed. config.assets.compile = true
参考
config/application.rbの現在のコード
class Application < Rails::Application config.i18n.default_locale = :ja config.action_view.embed_authenticity_token_in_remote_forms = true config.assets.initialize_on_precompile = false
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/26 18:48
2018/07/26 18:53