react-native-router-flux와 함께 redux를 사용합니다.
먼저, 내가 원하는 행동을 설명하겠습니다.
동영상에 대한 정보를 보여주는 장면이 있습니다. http 페이지에서 데이터를 가져 오는 중입니다. 이 비디오에는 "관련 비디오"와 같은 다른 비디오에 대한 링크가 있습니다. 클릭 한 관련 비디오 링크에서 새로운 유사한 장면을 열어야하지만이 새로운 비디오의 정보를 열어야합니다. 이 비디오에는 관련성이 있습니다.
그게 내가 시도한 것입니다.
키 = 필름이있는 장면이 하나 있습니다. 비디오에 대한 모든 정보를 렌더링합니다. 원격 서버에서 정보를 가져옵니다. Fething에서는 this.props.key를 사용하여 비디오 페이지를 식별합니다. 관련 비디오를 클릭하면
Action.film({key: NEW_VIDEO_KEY})
라는
새로운 장면이 열리고 가져 오기에서 새로운 데이터를 가져 와서 새로운 비디오 정보를 보여줍니다. 등등. 예를 들어이 작업을 5 번 수행합니다. 그래서 6 개의 장면이 열렸습니다 (첫 번째 장면 포함). 그러나 BACK 버튼을 누르면 이전의 모든 장면이 마지막 장면과 동일한 정보를 표시합니다.
그것은 반응 라우터 흐름이 장면 데이터를 기억하지 않고 경로 만 기억하기 때문이라고 생각합니다. 열린 각 장면에는 소품이 수정되었으므로 마지막 장면 이후에는 마지막 소품이 있습니다.
처음에 설명 할 때 필요한 동작을 구현하는 방법을 이해하지 못합니다.
히스토리 객체와 같은 것을 상태에 추가해야 할 수도 있고 열린 각 장면마다 비디오 객체를 푸시하고 팝 씬에서 히스토리 객체의 마지막 비디오 객체를 팝하십시오. 이전 객체를 이전 객체로 되돌립니다.
Action.pop({video: VIDEO_OBJECT})
와 함께 현장
...
그러나 목록보기에서 관련 비디오를 표시하면 각 장면의 스크롤 위치를 저장해야합니다 ((하드웨어 뒤로 버튼은 어떻습니까?
내가 잘못 이해하고 더 복잡하고 간단한 방법이있을 수 있습니다 ...
- 답변 # 1
좋아. 문제가 발견되었습니다. 문제는 모든 것이 함께 작동하는 방식에 대한 오해였습니다. 이제 필요에 따라 잘 작동합니다.