如何使用RxJS Observable的方式来select一个DIV?

How to use RxJS Observable way to select a DIV?

我正在使用 Angular 2.

现在我知道这样 select DIV 项目:

<div #aaa>
</div>

@ViewChild('aaa') private aaa: ElementRef;
ngAfterViewInit() {
  let item = this.aaa.nativeElement;
  item.style.top = '10px';
}

是否有 RxJS Observable 方法 select 那个项目,然后做类似 item.style.top = '10px'; 的事情?谢谢

如果您使用 @ViewChildren() rather than @ViewChild(), you'll get a QueryList<T> 对象,它有一个 changes 字段是一个 Observable<T>

@ViewChildren('aaa') private aaa: QueryList<ElementRef>; 
...
ngAfterViewInit() {
  this.aaa.changes.subscribe(elementRef => elementRef.nativeElement.style.top = '10px');
}

怎么样

<div [style.top.px]="someProp"></div>

someMethod() {
  this.someProp = 10;
}