我有2个独立的应用程序部分,使用共同的主题(截至目前)。
所以我尝试将它们放在同一个应用程序中,但是在两个不同的模块中:AppModule
和SecondModule
现在,我在环境文件中创建了一个变量buildModule,并创建了一个environment.second.ts
文件,其值为此变量(所有其他环境文件具有此变量的不同值,如第一个,第三个等):
export const environment = {
production: true,
LANGUAGE: 'en',
envName: 'second',
buildModule: 'second'
};
以及angular-cli.json
"environments": {
"dev": "environments/environment.ts",
"prod": "environments/environment.prod.ts",
"second": "environments/environment.second.ts"
}
在main.ts
中,我正在尝试对模块进行条件自举:
if (environment.production) {
enableProdMode();
}
let buildModule: string = environment.buildModule;
if(buildModule === 'second'){
platformBrowserDynamic().bootstrapModule(SecondModule)
.catch(err => console.log(err));
}
else{
platformBrowserDynamic().bootstrapModule(AppModule)
.catch(err => console.log(err));
}
但是我收到了错误:
ERROR in Error: Tried to find bootstrap code, but could not. Specify either statically analyzable bootstrap code or pass in an entryModule to the plugins options.
at Object.resolveEntryModuleFromMain (C:\Others\Project\Src\webapp\multiple\node_modules\@ngtools\webpack\src\entry_resolver.js:121:15)
at Promise.resolve.then.then (C:\Others\Project\Src\webapp\multiple\node_modules\@ngtools\webpack\src\angular_compiler_plugin.js:240:54)
at <anonymous>
我遇到了这个错误: https://github.com/angular/angular-cli/issues/3540
在角度5中是否有另一种独立引导/构建模块的方法?
答案 0 :(得分:3)
我甚至不知道从哪里开始。当然你可以发明一些奇怪的东西,但想法是
environment.*.ts
文件被视为用于CI目的。这意味着例如你有本地,舞台和现场环境,根据那些你可以配置不同的服务器等等。但是,您的特定问题可以通过各种方式解决。你能做什么: