在 Angular 13 中,可以使用 fileReplacements 属性来替换项目中的文件。对于 main.ts 文件的替换,可以按照以下步骤:
"fileReplacements": [
{
"replace": "src/main.ts",
"with": "src/main-prod.ts"
}
]
其中,replace 表示要替换的文件相对于项目根目录的路径,with 表示替换后的文件路径。
创建一个名为 main-prod.ts 的文件,并将主函数 (bootstrapModule)移到该文件中。
编辑 main.ts 文件,并将主函数注释掉:
//import { enableProdMode } from '@angular/core';
//import { AppModule } from './app/app.module';
//import { environment } from './environments/environment';
//if (environment.production) {
// enableProdMode();
//}
//document.addEventListener('DOMContentLoaded', () => {
// platformBrowserDynamic().bootstrapModule(AppModule)
// .catch(err => console.error(err));
//});
import { enableProdMode } from '@angular/core';
import { AppModule } from './app/app.module';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { environment } from './environments/environment';
if (environment.production) {
enableProdMode();
}
document.addEventListener('DOMContentLoaded', () => {
platformBrowserDynamic().bootstrapModule(AppModule)
.catch(err => console.error(err));
});
ng build --configuration=production
这样,编译后的项目将使用 main-prod.ts 文件替换了原来的 main.ts 文件。
需要注意的是,如果项目中包含多个环境配置(如 development/production/testing),则需要在对应的配置中添加 fileReplacements 配置项。