在开发过程中,我们通常使用导入:
import { NgxsReduxDevtoolsPluginModule } from '@ngxs/devtools-plugin';
import { NgxsLoggerPluginModule } from '@ngxs/logger-plugin';
是否应该为生产构建删除这些,或者在生产构建中保持这些完整(排除生产问题......?)
在开发过程中,我们通常使用导入:
import { NgxsReduxDevtoolsPluginModule } from '@ngxs/devtools-plugin';
import { NgxsLoggerPluginModule } from '@ngxs/logger-plugin';
是否应该为生产构建删除这些,或者在生产构建中保持这些完整(排除生产问题......?)
我将在此答案中为您总结我的评论:
prod
您通常会在env中删除此类插件。它只会消耗内存,不会给您的客户带来好处。您可以将它们保留在 QA 和 DEV 中,至少,我就是这样做的。
以下是我如何在构建中处理它:
// Module
// example with ngrx, but it works the same with ngxs
@NgModule({
declarations: [AppComponent],
imports: [
...,
environment.devToolsEnabled
? StoreDevtoolsModule.instrument({
maxAge: 50
})
: []
],
providers: [...],
bootstrap: [AppComponent]
})
export class AppModule {
constructor() {}
}
// environment
export const environment = {
production: false,
devToolsEnabled: true,
...
};
environment.ts 文件将在构建时使用此标志被您的特定环境文件覆盖:
ng build --configuration=<<environment>>