0

本番モードでのみロードしたいので@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')
})
4

1 に答える 1