最近公司要求学习angular,其实框架不难,但是就是里面的一些api挺难记下来,所以想在这记录一下api的使用方法来方便自己的查询。
1.forwardRef
例子:
import { Component,Inject,forwardRef } from 'angular2/core';
@Component({
selector: 'app',
template: `
<h1>test</h1>
`,
})
export class App {
constructor(@Inject(forwardRef(() => Service)) service) {
console.log(service);
}
}
@Injectable()
class Service {
}
bootstrap(App,[Service])
作用:简单的说保证被调用的类的正常使用,不会因为类所在的位置而出现报错,类实际上还是要被转化成函数的,放在下面的话是没有变量提升作用的,所以上面获取到的值就是unidentified就报错
参考地址:https://www.jianshu.com/p/555e94682655
2.ElementRef
class ElementRef<T> {
constructor(nativeElement: T)
nativeElement: T
}
使用此类声明后如(a: ElementRef)可以用a.nativeElement直接访问当前元素的DOM,请谨慎使用(可能会造成紧耦合)