Enable components to create new components
This commit is contained in:
@@ -20,6 +20,12 @@ public class ComponentFactory(IServiceProvider provider,
|
||||
|
||||
builder.AddServices(services =>
|
||||
{
|
||||
services.AddTransient(_ =>
|
||||
provider.GetRequiredService<IProxyServiceCollection<IComponentBuilder>>());
|
||||
|
||||
services.AddTransient(_ =>
|
||||
provider.GetRequiredService<IComponentFactory>());
|
||||
|
||||
services.AddTransient(_ =>
|
||||
provider.GetRequiredService<IProxyService<IPublisher>>());
|
||||
|
||||
@@ -31,7 +37,7 @@ public class ComponentFactory(IServiceProvider provider,
|
||||
|
||||
services.AddScoped(_ =>
|
||||
provider.GetRequiredService<INavigationRegionProvider>());
|
||||
|
||||
|
||||
services.AddScoped(_ =>
|
||||
provider.GetRequiredService<IComponentScopeCollection>());
|
||||
|
||||
|
||||
@@ -53,10 +53,10 @@ public class DefaultHostBuilder :
|
||||
services.AddScoped<INavigation, Navigation>();
|
||||
|
||||
services.AddSingleton(new NamedComponent("Root"));
|
||||
services.AddScoped<IComponentScopeCollection, ComponentScopeCollection>(provider => new ComponentScopeCollection
|
||||
{
|
||||
services.AddScoped<IComponentScopeCollection, ComponentScopeCollection>(provider =>
|
||||
[
|
||||
new ComponentScopeDescriptor("Root", provider.GetRequiredService<IServiceProvider>())
|
||||
});
|
||||
]);
|
||||
|
||||
services.AddTransient<IComponentFactory, ComponentFactory>();
|
||||
services.AddTransient<IComponentScopeProvider, ComponentScopeProvider>();
|
||||
|
||||
Reference in New Issue
Block a user