Skip to content

화면이 넘어가는 중간에 스와이프 뒤로가기 하면 멈추는 버그 #609

@jochongs

Description

@jochongs

안녕하세요.
웹뷰용 React 웹 구현에 stackflow를 사용하고 있습니다.

제가 만드려는 앱에서는 Activity를 이동할 때 push메서드를 사용하고 있습니다.

const { push } = useFlow();
...
<button onClick={() => push(...)}>activity 이동</button> 

그런데, 새로운 Activity가 오른쪽에서 왼쪽으로 등장하는 순간에 등장하는 Activity의 스와이프 뒤로가기 영역을 (스와이프 뒤로가기 하듯이)드래그 하다보면 다음과 같은 버그가 발생합니다.

  • 재연된 사진
    (화면이 넘어가다가 중간에 멈춰있는 모습)
Image

그래도 위의 경우는 pop함수를 호출하는 버튼을 눌러 앱을 다시 사용할 수 있습니다.

그러나 historySyncPlugin을 사용하고 있는 경우 같은 방식으로 재연하면 앱이 멈춰버립니다.
아무것도 눌리지 않더라구요.

export const { Stack, useFlow } = stackflow({
  transitionDuration: 350,
  activities: { MainActivity, PlaceDetailActivity },
  plugins: [
    basicRendererPlugin(),
    basicUIPlugin({
      theme: 'cupertino',
    }),

    // historySyncPlugin 사용 중
    historySyncPlugin({ 
      routes: {
        MainActivity: '/',
        PlaceDetailActivity: '/place/:idx',
      },
      fallbackActivity: () => 'MainActivity',
      useHash: false,
    }),
  ],
});

이런식으로 historySyncPlugin을 넣을 경우 어떤 영역을 터치해도 터치가 되지 않고 멈춥니다.

당근에서 웹뷰로 만들었을 것으로 추정되는 페이지에서 비슷하게 재연해봤는데요 당근 앱에서도 재연이 되는 것 같습니다.

재연 방법: 당근 앱 접속 -> Community 바텀탭 클릭 -> 아무 게시글 클릭 -> 새로운 Acitivity가 오른쪽에서 왼쪽으로 넘어올 때 타이밍 맞게 뒤로가기 스와이프
(10번 정도 시도하면 한 번 꼴로 재연이 되는 것 같아요)


단순 IOS 버그인지 stackflow버그인지는 판단이 되지 않습니다.
그럼에도 혹시몰라 이슈에 남깁니다.

좋은 오픈소스 만들어주셔서 감사드립니다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions