angular4学习笔记整理(三)angular4的服务
依赖注入基本步骤
生成service
1
2
3
4
5
6export class ProductService {
constructor() { }
getProduct(): Product {
return new Product(1, 'iphone', 5899, 'hahah');
}
}app.module.ts或者 某组件的配置里加上 提供器
1
2
3
4
5
6
7
8
9
10
11
12@NgModule({
declarations: [
AppComponent,
Product1Component,
Product2Component
],
imports: [
BrowserModule
],
providers: [ProductService],
bootstrap: [AppComponent]
})在module里配置的providers会对所有组件生效
但如果在组件的ts里面配置,则组件里配置的优先生效如:1
2
3
4
5
6@Component({
selector: 'app-product2',
templateUrl: './product2.component.html',
styleUrls: ['./product2.component.css'],
providers: [{provide: ProductService , useClass: AnotherProductService}]
})并且可以根据
1
providers: [{provide: ProductService , useClass: AnotherProductService}]
来指定不同的服务,虽然不同class,但在组件生成的东西还是一样的
在组件里面注入服务如
1
constructor(private productService: ProductService) { }
另外
服务之间也能相互注入靠@Injectable()
服务之间也可以注入,步骤一样,注册提供
还有这个
工厂和值申明提供器,高级玩法,我就学过没用过,提醒一下自己
1 |
|
angular4学习笔记整理(三)angular4的服务
http://arch94.github.io/2018/01/12/angular4学习笔记整理(三)angular4的服务/