Skip to content

앱에서 사용되고 있는 웹뷰 컴포넌트 로직 공통화 #45

@junseok44

Description

@junseok44

현재 홈화면 검색, 상세페이지 상품정보, 상세페이지 리뷰 정보를 가져오는데 각각 웹뷰가 사용되고 있음.
이 3개의 웹뷰 컴포넌트는 로직이 완전히 분리되어있는 상황. 유지보수하기에 어려움이 있음.

하지만 이 3개의 별도 로직을 추상화해보면 상당히 비슷함

  1. 클라이언트 (웹뷰 컴포넌트를 호출하는 쪽) 에서는 uri 세트 ( uri와 inject 할 javascript 코드로 이루어진 세트 ), onSuccess, onError를 웹뷰로 넘겨준다.
    2.웹뷰는 uri 세트의 첫번째 세트부터 접속을 시도한다.
  2. 접속이 성공적으로 되었다면 해당 세트의 javascript 코드를 inject 한다.
  3. inject 결과가 잘 나왔다면 onSuccess의 반환값으로 넣어준다.
  4. 실패했다면 다음 uri 세트로 네트워크 접속을 시도한다.
  5. 성공했다면 3+4, 실패했다면 또 다음
  6. 만약 마지막 uri 세트까지 실패했다면 그때는 onError를 호출한다.

이런 흐름으로 요약할 수 있음.
따라서 이런 로직을 수행하는 공통 컴포넌트로 추상화하고, webview-search, webview-detail, webview-review는 이 컴포넌트를 활용하는 방향으로 구현해서
향후 유지보수하기 쉽도록 개선할 필요가 있음.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions