Angular 2 获取组件之间的动态值
Angular 2 get dynamic value between components
我正在使用 table plugin and pagination plugin。我的目标是从分页组件中检测当前页码并将其添加到 table 组件中。这怎么可能?已经尝试过:
import { PaginationComponent } from '../+pagination/pagination.component';
@Component({
...
providers: [PaginationComponent]
})
public currPage: number;
public constructor(private pagin: PaginationComponent) {
this.currPage = this.pagin.page;
}
有效,但未检测到任何变化。我必须更改什么才能检测到更改?
当您使用它时:
<pagination (pageChanged)="pageChanged()"></pagination>
在上面使用的class里面:
export class SomethingThatUsesPagination{
pageChanged($event){
this.pageService.onChanged$.emit($event);
}
}
然后创建服务并将其注入到两个组件中
@Injectable()
export class PageService{
public onChanged$ = new EventEmitter();
}
然后在另一个需要了解分页内容的组件中:
export class OtherComponent{
constructpr(public pageService: PageService){
pageService.onChanged$.subscribe(($event) => {
console.log('$event',$event);
});
}
}
这是两个组件通过服务进行通信。
我正在使用 table plugin and pagination plugin。我的目标是从分页组件中检测当前页码并将其添加到 table 组件中。这怎么可能?已经尝试过:
import { PaginationComponent } from '../+pagination/pagination.component';
@Component({
...
providers: [PaginationComponent]
})
public currPage: number;
public constructor(private pagin: PaginationComponent) {
this.currPage = this.pagin.page;
}
有效,但未检测到任何变化。我必须更改什么才能检测到更改?
当您使用它时:
<pagination (pageChanged)="pageChanged()"></pagination>
在上面使用的class里面:
export class SomethingThatUsesPagination{
pageChanged($event){
this.pageService.onChanged$.emit($event);
}
}
然后创建服务并将其注入到两个组件中
@Injectable()
export class PageService{
public onChanged$ = new EventEmitter();
}
然后在另一个需要了解分页内容的组件中:
export class OtherComponent{
constructpr(public pageService: PageService){
pageService.onChanged$.subscribe(($event) => {
console.log('$event',$event);
});
}
}
这是两个组件通过服务进行通信。