문의 시, 사용하시는 SDK 버전 정보와 디벨로퍼스 앱ID를 알려주세요.
에러 메시지는 다음과 같습니다.
Illegal argument for “contents” in Share: size of contents should be more than 1 and up to 3
현재 웹 페이지에서 사용자가 textarea에 여러 줄로 입력한 항목을 줄 단위로 나눠서 contents 배열로 만들어 List 타입으로 공유하고 있습니다.
코드는 대략 이런 구조입니다.
let items = textareaValue
.split("\n")
.map(v => v.trim())
.filter(v => v);
const contents = items.map(text => ({
title: text,
description: "",
imageUrl: "https://example.com/school.png",
link: {
mobileWebUrl: "https://example.com",
webUrl: "https://example.com"
}
}));
Kakao.Share.sendDefault({
objectType: "list",
headerTitle: "숙제 안내",
headerLink: {
mobileWebUrl: "https://example.com",
webUrl: "https://example.com"
},
contents: contents
});
문제는 입력 항목이
-
1개일 때도 에러가 나고
-
4개 이상일 때도 같은 에러가 발생한다는 점입니다.
에러 메시지로 보면 contents 크기가 1 초과, 3 이하(즉 2~3개만 허용) 인 것처럼 보이는데, 카카오 공식 문서에서는 단순히 List 템플릿 구조만 설명되어 있고, 이 개수 제한이 왜 존재하는지에 대한 설명은 찾지 못했습니다.
궁금한 점은 다음입니다.
-
List 템플릿에서
contents를 2~3개로 제한한 이유가 UI 구조 때문인지, 내부 정책 때문인지 알고 싶습니다. -
항목이 1개일 경우에는 List 대신 Feed 템플릿을 사용하는 것이 공식적으로 권장되는 방식인가요?
-
4개 이상 데이터를 보여줘야 하는 경우, 여러 메시지로 나누는 것 외에 다른 권장 패턴이 있는지도 궁금합니다.
단순 사용법이 아니라 이 제한이 생긴 설계 배경이나 의도를 알고 싶습니다. 관련 문서나 가이드가 있다면 공유해 주시면 감사하겠습니다.