BackFire의 Backbone.Firebase.Collection
을 사용하고 있습니다. 모델을 업데이트하기 위해 입력 필드에 리스너가 있습니다.Firebase.update failed : 첫 번째 인수에 주기적 객체 값이 포함되었습니다.
Uncaught TypeError: Firebase.update failed: First argument contains a cyclic object value (collection.models.0.collection.models.0.collection.models.0.collection.models.0.collection.models.0.collection.models.0.collection.models.0.collection.models.0.collection.models...)
: 나는 콘솔에서 다음과 같은 오류가 값이 검증되고 데이터가 (포지를 통해 확인) 중포 기지의 말에 업데이트됩니다 않지만 다음 모델은
this.model.save({'title': val});
를 통해 업데이트됩니다 테스트를 위해 Firebase를 Localstorage로 교체하면 응용 프로그램이 제대로 작동합니다. BackFire를 사용하더라도 데이터가 업데이트되고 있습니다.
컬렉션의 모델에는 해당 모델에 대한 참조가있는 컬렉션에 대한 참조가 있습니다. 그러면 해당주기가 있습니다. 그래서 당신이 그것을 잘못 사용하고 있거나 Backfire가 버그를 가지고 있고 어디 론가'toJSON' 콜을 잃어 버렸습니다. –
귀하의 의견은 문제를 파악하는 데 도움이되었습니다. tl; dr :'model.save' 대신'mode.set'을 사용해야합니다. 의사가 을 말합니다. "알아 두십시오! 원격 데이터에 영향을 줄 수있는 함수를 호출 할 필요가 없습니다. 가져 오기 또는 동기화를 호출하면 컬렉션에, 도서관은 그것을 자동으로 무시할 것이다. " 콜렉션의 경우 가져 오기와 동기화를 무시하지만'model.save'를'Backbone.sync'에 위임하면 백 파이어는 그것을 무시하지 않고이 오류를 throw합니다. 감사합니다. –
답변으로 받아 들인 다음 동의하면 다른 사람들에게 좋은 참고 자료가 될 수 있습니다. 자신의 질문에 대답하고 대답을 수락 할 수 있습니다 (단, AFAIK는 24 시간 이내에 답변을 수락해야합니다). –