ng4.x 注入器

在应用启动时,angular会首先创建一个应用级的注入器,然后将模块中声明的提供器都注册到这个注入器中,然后angular会创建启动模块所需要的主组件bootstrap:[AppComponent],同时,应用级的这个注入器会为这个主组件创建一个组件级的注入器,并将组建中什么的提供器注册到这个组件级的注入器;当子组件创建时,它的父组件也会为这个子组件创建一个注入器,将子组件声明的注入器注册上去


angular框架的注入点只有一个:constructor(**){}


手动注入:【实战中应避免这种写法】

import { Component, OnInit, Injector } from '@/angular/core';

import { Product, ProductService } from "../shared/product.service";

export class ProductComponent implement OnInit {

product:Product;

private productService:ProductService;

constructor( private injector:Injector){

this.productService = injector.get(ProductService);

}

ngOnInit() {

this.product = this.productService.getProduct();

}

这样写:

export class ProductComponent implement OnInit {

   product:Product;

   constructor( private productService:ProductService){   }

   ngOnInit() {

        this.product = this.productService.getProduct();

    }

你可能感兴趣的:(ng4.x 注入器)