本番モードでのみロードしたいので@angular/service-worker
、webpack 構成に以下を追加しました。
new webpack.DefinePlugin({
'process.env': {
'NODE_ENV': JSON.stringify(isDevBuild ? 'dev' : 'prod')
}
})
しかし、私がそれを
imports: [
ServiceWorkerModule.register('/ngsw-worker.js', { enabled: (process.env.NODE_ENV === 'prod') })
]
次に、開発モードで期待どおりに動作します(つまり、同等にすると'dev'
、それが使用され、それ以外の場合は使用されません)が、製品モードでは、サービスワーカーはロードされず、コンパイル時または実行時エラーはありません。さらに、コンソールにログを記録すると、値はtrue
期待どおりであり、設定すると Service Worker が読み込まれenabled:true
ます。
これをwebpack構成で使用しています
new AngularCompilerPlugin({
tsConfigPath: './tsconfig.json',
entryModule: path.join(__dirname, 'ClientApp/app/app.module#AppModule')
})