이미 위젯이 렌더링되어 있습니다.
안녕하세요.
이제 막 예제코드 가지고 연동작업 테스트 해보고 있습니다.
결제 요청 버튼 누를 시 main() 함수 호출하여 레이어 팝업에 노출 시키고 있는데요.
닫기 후 재차 레이어 팝업을 띄울때
"AlreadyWidgetRenderedError: 이미 위젯이 렌더링되어 있습니다. 다시 렌더링하려면 cleanup 을 먼저 호출해주세요."
위와 같은 스크립트 에러가 나서 찾아보니 paymentMethodWidget.destory(); 를 호출하면 된다하여 스샷과 같이 테스트해 보았는데 동일한 에러가 나서 문의 드립니다..
12 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
샘플 코드 대로 실행하였을 때는 정상 동작 하시는거죠?
스샷도 올려주세요.
어디서 해당 오류가 발생하는건가요?
저 코드 그냥 실행하면 오류가 나지 않을 것 같은데요.
재차 레이어 팝업 띄울때 main()함수를 다시 호출하는데 위젯이 랜더링 되어 있다고 스크립트 에러가 납니다..
main을 두번 호출하시면 안 될 것 같은데요.
한번만 호출해주세요.
만약 레이어팝업을 닫고 다시 띄울 때 호출하게 된다면 닫을 때 destroy를 해주시면 됩니다.
지금 button_close에 구현하신게 그 부분 이신걸까요?
네 맞습니다
agreementWidget도 destroy하셔야 합니다
토스페이먼츠 JavaScript SDK | 토스페이먼츠 개발자센터
토스페이먼츠 JavaScript SDK를 추가하고 메서드를 사용하는 방법을 알아봅니다.
아..agreementWidget을 destroy안해서 발생했었네요..
답변 감사합니다!
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.