내가하려는 것은 페이지가로드 될 때 사용자에게 모든 "연락처"목록을 보여줄 것입니다. 공정한 코드가 있으므로 모든 코드를 넣으십시오. HERE은로드 방법입니다.StackMob에서 Handlebars.js 사용하기
$(window).load(function() {
var Contacts = StackMob.Model.extend({ schemaName: 'contacts' });
var myContacts = new Contacts();
var q = new StackMob.Collection.Query();
q.orderAsc('firstname'); //sort by firstname in ascending order
myContacts.query(q, {
success: function (model) {
console.log(model.toJSON());
for (var i = 0; i < model.length; i++) {
var data = ({
FirstName: model[i].attributes.firstname,
LastName: model[i].attributes.lastname,
Pno: model[i].attributes.phoneno,
Emails: model[i].attributes.email,
objIdel: model[i].contacts_id,
objIdeit: model[i].contacts_id
});
var template = Handlebars.compile($('#template').html());
var html = template(model);
$("#contacts").append(template(data));
}
},
error: function (model, response) {
console.debug(response);
}
});
});
console.log (model.toJSON()); 내가 기대할 수있는 것을 보여 주지만 그것은 for 루프에 전혀 들어갈 것 같지 않습니다.
편집 : 나는 루프 제거하고 내가
var data = ({
FirstName: model.attributes.firstname,
LastName: model.attributes.lastname,
Pno: model.attributes.phoneno,
Emails: model.attributes.email,
objIdel: model.contacts_id,
objIdeit: model.contacts_id
});
편집 입력에 어떤 값을 하나의 접촉을 얻을 수 아래의 코드를 사용하여 얻을 경우 : 내가 접촉하여 콘솔의 FIRSTNAME을 얻을 수 있었다 .log (results.attributes [0] [ "firstname"]); 문제는 루프에 들어 가지 않는 이유를 파악할 수 없다는 것입니다.
루프없이 코드를 테스트 한 결과 처음으로 계획 한대로 작업 한 첫 번째 연락처의 템플릿을 만들었지 만, 왜 루프를 거치지 않는지 파악할 수 없습니다. Link to a more up to date version of the code
감사합니다. 내가 한 일은 데이터가있는 곳입니다. 길이, Object.length를 사용했고 이전 예제에서 사용한 코드의 측면에서 작동했습니다. –