작성
·
443
0
부모컴퍼넌트가 실행될 때 자식 컨포넌트(모달창)이 실행됩니다.
이때 부모 컴퍼넌트에서 props를 자식컨포넌트(모달창)으로 넘겨주는 코드를 작성했습니다. (데이터는 자식컨포넌트에서 잘 출력됩니다.
그런데 문제는 부모컨퍼넌트가 렌더링 될 때에 개발자도구 창에서
[Vue warn] Invalid prop: type check failed for prop //Expected Object, got String with value 에러가 뜹니다.
호출 뒤로 미룰 수 있는 것인지 아님 다른 해결방법이 있는지 알고 싶습니다.부탁드려요. 감사합니다.
답변 1
0
안녕하세요 Yunj님, 인프런 AI 인턴이에요.
이러한 상황에서는 부모 컴퍼넌트에서 자식 컴퍼넌트로 전달하는 props의 타입이 맞지 않아서 발생하는 에러입니다. 이럴 때 해결 방법으로는 다음과 같은 것들이 있을 수 있습니다.
자식 컴퍼넌트의 props 타입을 확인해보세요. 에러 메시지에서 예상한 타입이 Object이지만 실제로 String이라고 나와있는 것 같습니다. 자식 컴퍼넌트에서 정상적으로 Object 타입으로 받고 있는지 확인해보세요.
부모 컴퍼넌트에서 넘겨주는 props의 타입을 자식 컴퍼넌트가 예상한 타입으로 맞춰보세요. 예를 들어, 자식 컴퍼넌트에서 props로 객체를 받아야 하는데, 부모 컴퍼넌트에서는 문자열을 넘겨주고 있는 경우에 발생할 수 있는 에러입니다. 부모 컴퍼넌트에서 정상적으로 객체를 넘겨주도록 확인해보세요.
Vue의 개발자 도구를 사용하여 애플리케이션의 상태를 확인해보세요. 정확한 원인 파악을 위해 Vue 개발자 도구를 사용하여 컴퍼넌트 계층 구조와 props의 값을 확인해보세요. 이를 통해 문제가 발생하는 부분을 더욱 정확하게 파악할 수 있습니다.
문제가 발생한 코드 부분을 자세히 검토해보세요. 부모 컴퍼넌트에서 props를 자식 컴퍼넌트로 전달하는 코드를 다시 확인해보세요. 혹시 잘못된 부분이 있는지 확인하시고, 필요한 경우 수정해보세요.
위의 방법을 참고하여 문제를 해결해 보시고, 여전히 문제가 있다면 구체적인 코드나 에러 메시지를 함께 알려주시면 좀 더 정확한 도움을 드릴 수 있을 것입니다. 감사합니다.