0

content_scripts을 사용하여 Chrome 확장 프로그램으로 밀어 넣을 수있는 반응 앱이 있습니다. 기본적으로 경로를 기반으로 문맥 적으로 관련성이있는 도구를 보여주는 페이지의 오버레이입니다. 문제는 내 페이지의 콘텐츠 링크로 인해 내 확장 프로그램의 반응 라우터가 클릭 할 때 내역을 업데이트하지 않는다는 것입니다. 따라서 사용자가 실제 웹 사이트 링크를 사용하여 페이지를 변경하면 내 앱에 올바른 도구가 표시되지 않습니다. 그들이 적당한 길에서 리프레쉬했을 때만.React Chrome 확장 프로그램 - React Router v4가 페이지 콘텐츠에서 URL 변경 이벤트를받지 못합니다.

사용자가 기존 페이지 콘텐츠의 링크를 클릭하면 반응 라우터가 인식하고 업데이트하는 방법이 있습니까?

+0

'react-router'가 여기에 서버를 배치할지 확실하지 않습니다. URL 변경 사항을 청취하는 방법은 무엇입니까? https://stackoverflow.com/questions/34957319/how-to-listen-for-url-change-with-chrome-extension –

+0

반응 응용 프로그램 외부의 사용 사례는 괜찮은 것처럼 보이지만 실제로는 그렇지 않습니다. 이 이벤트 리스너를 사용하여 내 확장 프로그램 내의 반응 라우터가 업데이트하도록 지시하는 방법 그러나 이것은 아마도 더 좋은 방향입니다. – DigitalDisaster

+1

chrome.webNavigation.onHistoryStateUpdated 및 .onReferenceFragmentUpdated를 사용하여 백그라운드 페이지에서 페이지 내 탐색을 검색 한 다음 콘텐츠 스크립트 앱에 메시지를 보낼 수 있습니다. – wOxxOm

답변

0

"hashchange"이벤트 리스너를 사용하여 URL 변경 사항을 수신 한 다음 url 변경 사항을 browserHistory.push ('/ some/path')가있는 라우터로 푸시 할 수 있습니다.

+0

나는'# '으로 URL 다음에 변경을 가할 때만 hashchange를 사용한다고 생각하니? 아니? – DigitalDisaster