e2e(dependency-injection): fix for Dart and simplification for TS
Fixes #2493 No need to dual boot `AppComponent` and `ProvidersComponent` only to ensure that we could demo optional injection; instead just inject null for the `@Optional` constructor parameter type. No prose is affected by these changes.
This commit is contained in:
parent
4a4144efe1
commit
64bce18ea7
@ -22,7 +22,9 @@ import 'providers_component.dart';
|
|||||||
<button (click)="nextUser()">Next User</button>
|
<button (click)="nextUser()">Next User</button>
|
||||||
<p>
|
<p>
|
||||||
<my-heroes id="authorized" *ngIf="isAuthorized"></my-heroes>
|
<my-heroes id="authorized" *ngIf="isAuthorized"></my-heroes>
|
||||||
<my-heroes id="unauthorized" *ngIf="!isAuthorized"></my-heroes>''',
|
<my-heroes id="unauthorized" *ngIf="!isAuthorized"></my-heroes>
|
||||||
|
<my-providers></my-providers>
|
||||||
|
''',
|
||||||
directives: const [
|
directives: const [
|
||||||
CarComponent,
|
CarComponent,
|
||||||
HeroesComponent,
|
HeroesComponent,
|
||||||
|
@ -224,7 +224,11 @@ class Provider9Component implements OnInit {
|
|||||||
|
|
||||||
// Sample providers 1 to 7 illustrate a required logger dependency.
|
// Sample providers 1 to 7 illustrate a required logger dependency.
|
||||||
// Optional logger, can be null.
|
// Optional logger, can be null.
|
||||||
@Component(selector: 'provider-10', template: '{{log}}')
|
@Component(
|
||||||
|
selector: 'provider-10',
|
||||||
|
template: '{{log}}',
|
||||||
|
providers: const [const Provider(Logger, useValue: null)]
|
||||||
|
)
|
||||||
class Provider10Component implements OnInit {
|
class Provider10Component implements OnInit {
|
||||||
final Logger _logger;
|
final Logger _logger;
|
||||||
String log;
|
String log;
|
||||||
|
@ -10,6 +10,5 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<my-app>Loading...</my-app>
|
<my-app>Loading...</my-app>
|
||||||
<my-providers>Loading my-providers ...</my-providers>
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,11 +1,9 @@
|
|||||||
import 'package:angular2/platform/browser.dart';
|
import 'package:angular2/platform/browser.dart';
|
||||||
|
|
||||||
import 'package:dependency_injection/app_component.dart';
|
import 'package:dependency_injection/app_component.dart';
|
||||||
import 'package:dependency_injection/providers_component.dart';
|
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
//#docregion bootstrap
|
//#docregion bootstrap
|
||||||
bootstrap(AppComponent);
|
bootstrap(AppComponent);
|
||||||
//#enddocregion bootstrap
|
//#enddocregion bootstrap
|
||||||
bootstrap(ProvidersComponent);
|
|
||||||
}
|
}
|
||||||
|
@ -22,6 +22,7 @@ import { UserService } from './user.service';
|
|||||||
<p>
|
<p>
|
||||||
<my-heroes id="authorized" *ngIf="isAuthorized"></my-heroes>
|
<my-heroes id="authorized" *ngIf="isAuthorized"></my-heroes>
|
||||||
<my-heroes id="unauthorized" *ngIf="!isAuthorized"></my-heroes>
|
<my-heroes id="unauthorized" *ngIf="!isAuthorized"></my-heroes>
|
||||||
|
<my-providers></my-providers>
|
||||||
`,
|
`,
|
||||||
providers: [Logger]
|
providers: [Logger]
|
||||||
})
|
})
|
||||||
|
@ -53,7 +53,7 @@ import {
|
|||||||
{ provide: APP_CONFIG, useValue: HERO_DI_CONFIG }
|
{ provide: APP_CONFIG, useValue: HERO_DI_CONFIG }
|
||||||
],
|
],
|
||||||
// #enddocregion ngmodule-providers
|
// #enddocregion ngmodule-providers
|
||||||
bootstrap: [ AppComponent, ProvidersComponent ]
|
bootstrap: [ AppComponent ]
|
||||||
})
|
})
|
||||||
export class AppModule { }
|
export class AppModule { }
|
||||||
// #enddocregion ngmodule
|
// #enddocregion ngmodule
|
||||||
|
@ -229,7 +229,8 @@ let some_message = 'Hello from the injected logger';
|
|||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'provider-10',
|
selector: 'provider-10',
|
||||||
template: template
|
template: template,
|
||||||
|
providers: [{ provide: Logger, useValue: null }]
|
||||||
})
|
})
|
||||||
export class Provider10Component implements OnInit {
|
export class Provider10Component implements OnInit {
|
||||||
log: string;
|
log: string;
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
|
|
||||||
<body>
|
<body>
|
||||||
<my-app>Loading my-app ...</my-app>
|
<my-app>Loading my-app ...</my-app>
|
||||||
<my-providers>Loading my-providers ...</my-providers>
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user