Angular 2 cuando usar DI, proveedor o importación pura?
Estoy un poco confundido cuando es apropiado usar qué.
1. Defina la clase con funciones estáticas, solo importe y use el nombre importado y luego la función
Clase compartida:
export class SomeClass {
static someFunction(){
...
}
}
Clase que utiliza la clase exportada:
import { SomeClass } from './someclassstatic'
...
constructor(){
SomeClass.someFunction()
}
2. Defina la clase estándar, luego monte a través de DI
Clase compartida:
export class SomeClassDI {
public someFunctionDI(){
...
}
}
Clase que utiliza la clase exportada:
import { SomeClassDI } from './someclassdi'
...
constructor(private theclassdi:SomeClassDI){
this.theclassdi.someFunction()
}
3. Defina la clase estándar, luego monte como proveedor mientras arranca
Clase compartida:
export class SomeClassBS {
public someFunctionBS(){
...
}
}
Clase que arranca Angular2
import { SomeClassBS } from './someclassbs'
...
bootstrap(AppComponent, [SomeClassBS]);
Clase que utiliza la clase exportada:
??? I am not sure what can be the example here.
¿Cuál es el uso adecuado de los proveedores?