2017-05-17 1 views
1

안녕하십니까.2 데이터 세트 1 구독 신청 1 세트 읽기 또는 1 세트 (각도) 변경 적용

결과를 반환하는 데 시간이 걸리는 서비스가 있습니다. 최악의 경우 - 두 번 전화해야합니다.

반환 된 데이터는 변경 될 때 다른 이벤트를 발생시키는 2 개의 그리드 (하나는 편집 가능)를 형성합니다. 한번 서비스에 가입 배열에 대한 변경은 두 세트에 흐르는 2 개 데이터 세트를 생성하는 경우

나 가입을 구분하면

, 상기 제 2 어레이에 대한 변경이 셋

에 포함된다.

나는 문제가 내 서비스를 여기

this._CashService.getCash() 
    .subscribe((data: any[]) => { 
    this.cash = data; 
    this.cash2 = data; 
}); 

에 가입하는 방법을 함께 할 것입니다 의심하는 것은 plunker 내 문제를 보여주고있다

https://plnkr.co/GwgBD1Mp8XF5oLZoYt4k?p

나는 가기 그리드를 늘하지 않습니다 변경

답변

0

첫 번째 격자를 "cash"변수에 바인딩하고 두 번째 격자를 "cash2"에 바인딩하는 동안이 변수는 동일한 배열 ("데이터")을 참조했습니다. 내 봉사에서왔다.) 그래서 "cash2"배열의 항목을 수정하면 "cash"배열도 수정되었습니다.

배열을 별도로 편집하려면 원래 배열의 복사본을 만들어야했습니다. 이 예를 위해 이렇게하려면

this.cash2 = JSON.parse(JSON.stringify(data));