2016-07-12 5 views
-1

가장 좋은 방법 로컬 저장 될 것입니다 무엇 : 나는 100 개 제품 유형 (for ex. Dress, pant)나는 아래 시나리오에 대한 더 나은되는 방법 알고 싶어

에게 각은> 100 개 브랜드, 나는이 말을 하나의 서비스 API를 가지고있다 점,

end pt1 : if i call this i will get all product types and all corresponding brands. 

end pt2: if i call this i will get all brands for a single product type. 

내 접근 방식은,

전화 endpt1와 로컬 스토리지에이 정보를 저장하고 당신은 이동 하나의 제품 페이지에서 다른 당신은 시간을 해달라고하면 다시 전화 API를 에이 제품 유형에 대한 모든 브랜드 얻기.

그러나 누군가가 제안

당신이 어떤 제품 페이지에 착륙하면 아무것도 호출 최종 PT2를 저장하지 말아.

시간, 정확도 및 코드 유지 보수 측면에서 어떤 접근 방식이 가장 좋을까요?

+2

검색 시간? 로컬 저장소를 사용하십시오. 정확성? 항상 API에서로드하십시오. 유지? 좋은 코드를 작성할 수 있다면 똑같아 야합니다. –

+0

localStorage를 사용하는 경우 데이터 변경을위한 동기화 전략이 필요합니다. – charlietfl

+2

로컬 스토리지는 사용자 구성 및 사용자 조작으로 인해 실패 할 가능성이 있습니다 ... 나는 API를 로컬 스토리지에 의존하는 것보다 수백 번 호출 할 것입니다. 그러나 그것은 데이터가 "민감하지"않다면 한 번로드하는 것이 백 배나 더 좋습니다. 그들을 결합하여 pt1을 저장하고 필요에 따라 pt2를 가져 오십시오. –

답변

1

절대적으로해야하지 않는 한 나는 localstorage를 사용하지 않을 것입니다. 로컬 캐시가 오래 걸리므로 동기화해야합니다. 저장소 제한을 초과하면 로컬 저장소가 실패 할 수 있습니다. 필요에 따라 코드에 복잡성을 추가합니다 (2 개 소스 대신 1 개 소스).

API를 호출하는 것이 각 화면에 비해 너무 느린 경우 해당 지점의 성능을 최적화 할 수 있습니다. 나는 그것을 사전에하지 않을 것이다.

최적화가 필요한 경우에도 로컬 저장소가 가장 먼저 선택되지는 않습니다. 데이터를 메모리 (전역 변수)에 캐시하고 클라이언트 측 라우팅이나 다른 것을 수행합니다.

관련 문제