Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- ISO9126
- phantomjs
- angular-cli
- 신한대학교
- 품질
- 네이버 클라우드 플랫폼
- casperJS
- SW
- Cheerio
- angular2
- REQUEST
- ISO25010
- 품질 표준
- cyber.shinhan
- 서버
- 도커
- angular
- RxJS
- 소프트웨어
- vscode
- 크롤링
- 페이지구분
- docker
- ISO25000
- angular2 google analytics
- pylint
- npm repository
- Nexus
- nodejs
- 구글 클라우드 플랫폼
Archives
- Today
- Total
나를 위한 기록들
Angular2 rxjs 데이터 공유하기 본문
Rxjs를 이용해서 데이터를 공유하는 방법
서비스
// shared-service.ts
import { Observable } from 'rxjs/Observable';
import { Injectable } from '@angular/core';
import { Subject } from 'rxjs/Subject';
@Injectable()
export class SharedService {
private emitChangeSource = new Subject<any>();
changeEmitted$ = this.emitChangeSource.asObservable();
emitChange(change: any) {
this.emitChangeSource.next(change);
}
}
데이터 보내기
import { Component} from '@angular/core';
@Component({
templateUrl: 'child.html',
styleUrls: ['child.css']
})
export class ChildComponent {
constructor(
private sharedService: SharedService
) { }
onClick(){
this.sharedService.emitChange('데이터를 보내');
}
}
데이터 받기
import { Component} from '@angular/core';
// import 서비스
@Component({
templateUrl: 'parent.html',
styleUrls: ['parent.css']
})
export class ParentComponent {
constructor(
private sharedService: SharedService
) { }
// 구독
this.sharedService.changeEmitted$.subscribe(data => {
console.log('data: ', data);
})
}
'JS > Angular' 카테고리의 다른 글
Angular2 with google analytics (구글 아날리틱스 페이지구분) (0) | 2017.09.10 |
---|---|
Angular2, 4 스크롤 이벤트 (0) | 2017.09.04 |
Comments