2016-12-01 3 views
2

키를 값으로 변환하려고합니다 (서버 호출을 사용하여 서버에서 가져옴). 서버가 두 번 만들어에http 서비스가있는 Angular2 파이프

보기

<div> {{ 'SomeText1' | performtranslation }} </div> 
<div> {{ 'SomeText2' | performtranslation }} </div> 

파이프 정의 여기 이후

transform(key: string): string { 
    //http server call 
    var updatedValue = http.get(key); //Just example 
    return updatedValue ; 
} 

우리는이 번역이, 호출합니다. 마찬가지로 100 개의 키가 있으면 100 개의 전화가 걸립니다. 우리는 어떻게 한 번 전화를 제한하고 할 수 있습니다.

답변

0

결과를 캐시하고 서버에 호출하는 대신 캐시에있는 즉시 서비스를 반환하는 서비스 (싱글 톤)를 사용할 수 있습니다. 또한 What is the correct way to share the result of an Angular 2 Http network call in RxJs 5?

+0

두 번째로 캐시 할 수 있지만 처음 100 번로드하면됩니다. 그것을 제한하거나 최적화하는 아이디어. – user1853803

+0

링크 된 질문에 대한 나의 답은 정확하게 그것을 막아야합니다. 다른 사람들에 대해서는 확실하지 않습니다. –

+0

그리고 배열을 반환하는 make 1 호출은 어떻습니까? – soywod