오류 : Meteorjs의 비 배열에 $ Push 수정자를 적용 할 수 없음
-
13-12-2019 - |
문제
이것은 주 문서의 하위 안티멘트로 사전을 추가하는 함수입니다.
addSubItem = function(id, data) {
s = Item.findOne(id);
if(s){
Item.update({_id:id},{$push:{'subItemsList':data}});
}
};
.
I 데이터가 통과되었는지 확인하고 유효한 기본 문서 ID가 하위 인텐 데이터입니다.
data = {num:1, value: 'Subitem1'};
.
이것은 최신 버전의 유성 버전 (0.4.2)으로 어제 잘 작동하지만, 오늘은 JavaScript 콘솔 에서이 메시지를받습니다.
Error: Cannot apply $push modifier to non-array
.
새 프로젝트를 만들고 설정하고 여전히 동일하게 똑같습니다.
해결책
Lloyd, 멋진 해결 방법 및 JavaScript 충돌 코스 (저는 Begginer)에 감사드립니다.하지만 솔루션을 찾았습니다. ( "$ Push")
addSubItem = function(id, data) {
s = Item.findOne(id);
if(s){
Item.update({_id:id},{"$push":{'subItemsList':data}});
}
};
. 다른 팁
시도 :
addSubItem = function(id, data) {
s = Item.findOne(id);
if(s){
s.subItemsList = s.subItemsList || [];
s.subItemsList.push(data);
Item.update(id, s);
}
};
. 제휴하지 않습니다 StackOverflow