강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

Lemon Blue님의 프로필 이미지
Lemon Blue

작성한 질문수

파이썬/장고로 결제 시작하기 (Feat. 아임포트) - 기본편

payment_new 뷰에서 Payment 생성하고 payment_pay로 이동하기

Identifier 'IMP' has already been declare 에러 질문입니다

작성

·

391

0

PPA3xUNXHP.png

15번째 payment 관련 강의를 진행중입니다.

 

폼 입력 후에 진행을 하면

Identifier 'IMP' has already been declare 라는 에러가 발생하는데 어떻게 해결해야 할런지요?

재정의를 하면 안된다는 의미라는데... 방법을 잘 모르겠습니다.

답변 1

0

이진석님의 프로필 이미지
이진석
지식공유자

안녕하세요.

아임포트 기본에서 IMP 객체가 이미 전역으로 설정되어있기에, 전역 scope에서 const IMP = window.IMP 를 쓰면 window.IMP = window.IMP 와 같은 의미가 되기에 말씀하신 오류가 발생합니다.

아래처럼 함수로 래핑 (wrapping)하시어 함수 scope에서 IMP가 만들어지도록 해보실 수 있습니다.

(function() {

const IMP = window.IMP;

})();

image

살펴보시고 댓글 남겨주세요.

화이팅입니다. :-)

Lemon Blue님의 프로필 이미지
Lemon Blue
질문자

빠른 답변 감사드립니다! 해당 부분 수정 후 실행이 잘 되고 있습니다. 명절 잘 보내세요 👍

Lemon Blue님의 프로필 이미지
Lemon Blue

작성한 질문수

질문하기