사용자가 이메일 구독을 취소 할 수있는 반응 구성 요소가 있으며 구독 취소 링크와 함께 해시가 전달되어 요청이 연결된 메일 항목을 알 수 있습니다. 불행하게도 해시 때때로, 그것은 일부 URL 특정 문자가 같은 +
과 /
. 지금은 해시에서 구독 취소 서비스로 전달할 데이터를 가져 오기 위해 다음과 같은 작업을 수행하고 있습니다.
const query = new URLSearchParams(useLocation().search);
const campaignId = query.get('campaign') ?? '';
문제는 campaign
구독 취소에 전달 하고 (예를 들어) campaig
해시에 a +
가 있으면 공백으로 변환된다는 것입니다.
이 문자열을 가져 오는 더 좋은 방법이 있습니까? 아니면 "인코딩 해제"하는 방법이 있습니까?
나는 꽤 우아하지 않은 일을했지만 작동합니다. decodeURIComponent()
위의 주석에서 @ofri가 제안한대로을 사용 했지만 공백은 +
. 그래서 이것은 내가 생각해 낸 것입니다.
const query = new URLSearchParams(useLocation().search);
const campaignId = query.get('campaignId') ?? '';
// then when we create the axios payload:
campaignId : decodeURIComponent(campaignId.replace(/ /g, '+'))
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다