ai
brief
← 피드로 돌아가기
기업블로그

당근, 동네걷기 서비스의 다중 오버레이 충돌 문제를 우아하게 제어한 방법

당근

당근

2026년 9월 30일

주요 내용

  • 당근 동네걷기 홈은 OS 신체활동 권한 팝업, 권한 안내, 앱 알림 설정 유도, 온보딩 가이드, 걸음 수 알림 모달, 연속 방문 모달, 프로모션 오버레이 등 다수의 오버레이가 존재함
  • 각 오버레이는 유저 액션 없이 앱 버전·네이티브 권한 상태·서버 응답·정책 조건 등에 따라 스스로 발화하는 구조
  • 기존 방식은 컴포넌트끼리 직접 연결(onClose, onAnimateEnd prop 체이닝)하여 순서를 관리했으나, 오버레이 추가 시 체인 전체를 수정해야 하고 도메인 로직에 분기 조건이 혼재하는 문제가 있었음
  • 한시적 프로모션 오버레이가 추가될 때마다 전체 분기와 prop 핸들러를 수정해야 했으며, 발화 조건 조합의 경우의 수만큼 순서가 깨질 수 있는 QA 사각지대가 발생함
  • 해결 과정에서 문제 재정의, 추상화 단위(데이터 vs 함수), Promise deferred 패턴, ES2024 Promise.withResolvers, 실행 컨텍스트와 렉시컬 환경, queueMicrotask 등의 개념을 활용함

큐레이터 노트

오버레이 간 의존성을 제거하고 중앙화된 제어 방식을 도입하려는 시도로, 복잡한 웹뷰-네이티브 혼합 환경에서 UI 순서 제어 문제를 구조적으로 해결한 실무 사례를 공유했다는 점에서 의의가 있다.

#당근#동네걷기#오버레이#프론트엔드#Promise#웹뷰#UI제어

출처

당근

https://medium.com/daangn/%EB%8B%B9%EA%B7%BC-%EB%8F%99%EB%84%A4%EA%B1%B7%EA%B8%B0-%EC%9C%84%EC%97%90%EC%84%9C-%EB%8F%99%EC%8B%9C%EC%97%90-%EC%8F%9F%EC%95%84%EC%A7%80%EB%8A%94-%EC%98%A4%EB%B2%84%EB%A0%88%EC%9D%B4%EB%93%A4%EC%9D%84-%EC%9A%B0%EC%95%84%ED%95%98%EA%B2%8C-%EC%A0%9C%EC%96%B4%ED%95%98%EA%B8%B0-097551289b2a?source=rss----4505f82a2dbd---4

원문 보기 →

같이 볼만한 기사

네이버, 사내 AI 해커톤 1위 팀의 재무 업무 자동화 도전기

네이버 D2·2개월 전

토스, 자체 개발 QA 플랫폼 '토션(Tossion)' 공개 — 흩어진 테스트 데이터 통합 관리

토스·1개월 전

당근, WebView 한계 극복 위해 Lynx 기술 도입 결정한 이유

당근·1개월 전

당근, 웹뷰 성능 한계 극복 위해 크로스플랫폼 기술 'Lynx' 도입

당근·1개월 전