2017-12-27 49 views
0

만료시 업데이트 할 데이터가 있습니다.이 데이터는 저장된 값과 만료 시간을 가지며 둘 다 밀리 초 단위의 날짜/시간입니다.브라우저에서 시간 만료에 따라 데이터 업데이트

나는 이것을 수행하는 가장 좋은 방법을 알아 내려고 노력하고 있으며, 브라우저에서 시간을 추적해야한다고 생각하고 현재 시간이 만료 시간과 일치 할 때 업데이트를 호출 할 수 있습니다.

브라우저에서 브라우저를 인식하도록하려면 어떻게해야하는지 모르겠습니다. 프로젝트가 React App이므로 다른 옵션으로 socket.io를 사용하는 것도 고려했습니다.

편집 : 확인을 위해 라이프 사이클 메소드에서 호출해야하므로 setTimeout을 사용하지 않으려합니다. 이상적으로, 사용자가 결코 페이지/구성 요소를 떠나지 않아 새로운 라이프 사이클 메소드가 트리거되지 않으면, 여전히 업데이트를 확인하고 업데이트하려고합니다.

답변

0

만료되면 새로운 datapoint가있을 것입니까?

현재 데이터가 마운트 될 때까지 유효한지 확인할 수 있습니다. 그런 다음, 새로운 데이터 포인트를 얻기 위해 함수를 호출 할 해당 기간에 대한 시간 초과를 설정하십시오. 그 후에, 그 논리를 계속 사용하십시오. 기본적으로 만료 날짜에서 Date.now()를 뺀 값을 기반으로하는 변수 setTimeout을가집니다.

+0

은 동일한 포인트를 호출하지만, 사용자가 setTimeout을 사용하거나 willMount를 사용하지 않고이 작업을 수행 할 방법을 찾고 있습니다. 사용자가 페이지에 머물렀다가 떠나지 않으면 계속 업데이트하고 싶습니다. 불행히도 이것은 사용자가 아무데도 가지 않으므로 라이프 사이클이 시작되지 않는다는 것을 의미합니다. –

+0

글쎄, 새 데이터 포인트를 푸시하고 해당 이벤트의 뷰를 업데이트하는 소켓을 설정할 수 있다고 생각합니다. 만료 날짜가있는 정적 객체를 사용하려면 setTimeout과 같은 작업을 수행해야합니다. 백엔드로 하여금 데이터 포인트에 대한 타임 아웃을 설정하고 소켓을 통해 청취중인 모든 클라이언트로 이벤트를 방출 할 수도 있습니다. –