我用runApp和namend参数“ createInjector”引导角度来定义routerStrategy“ routerProviders”或“ routerProvidersHash”。 有没有什么方法可以像我希望在第一行中那样自动执行此定义?对于本地开发,我希望使用“ routerProvidersHash”;对于现场环境,则希望使用“ routerProvider”。
const List<Provider<Object>> routerStrategy = Environment.isLive() ? routerProviders : routerProvidersHash;
@GenerateInjector([
routerStrategy,
ClassProvider(Client, useClass: BrowserClient),
])
final InjectorFactory injector = self.injector$Injector;
void main() {
runApp(ng.AppComponentNgFactory, createInjector: injector);
}
问题是,这个值需要是一个const,但是我不能创建这样的常量。 我不知道要使它更灵活:(
答案 0 :(得分:0)
它是非常有意的常量,好像它像您建议的那样是动态的,因此无法优化。
我想您可以做的是有两个注入器,一个用于开发,一个用于生产,并决定在调用runApp时使用哪个。