여기에 핸들 막대 및 백본으로 템플릿을 렌더링하는 데 문제가 있습니다. 각 블록이 작동하지 않는 이유를 모르겠습니다. 템플릿을 여러 번 작성하고 json을 다시 작성하지만 작동하지 않습니다. 누군가의 아이디어가 하면 당장 내 실수 :템플릿이 백본 및 핸들 막대와 함께 작동하지 않습니다.
여기내 index.html을 :
<body>
<div id="page">
</div>
<script type="text/x-handlebars-template" id="template">
<h4> test template </h4>
{{#each rappers}}
<p>{{rappers.blazz}} !!!!!!</p>
{{/each}}
</script>
</body>
나는이 결과를 가지고 :
test template
!!!!!!
!!!!!!
!!!!!!
하지만를 {{blazz}} 여기에 값 ..
내 JS :
var Rapper = Backbone.Model.extend({
// defaults : {
// blazz: ""
// },
initialize: function() {
console.log("Création d'un nouveau rapper");
}
})
var Rappers = Backbone.Collection.extend({
// defaults : {
// blazz: "pas de blazz"
// },
model : Rapper,
url : './js/data.json'
})
var RapperList = Backbone.View.extend({
el:'#page',
render: function(){
var that = this;
var rappers = new Rappers();
rappers.fetch({
success: function(rappers){
var source = $("#template").html();
var template = Handlebars.compile(source);
that.$el.html(template({rappers : rappers.toJSON()}));
}
})
}
});
var Router = Backbone.Router.extend({
routes:{
'' : 'home'
}
});
var rapperList = new RapperList();
var router = new Router();
router.on('route:home',function(){
rapperList.render();
})
Backbone.history.start();
그리고 내 JSON :
[
{"rapper" :
[
{"blazz" : "person1"},
{"nom" : "paul"},
]
},
{"rapper" :
[
{"blazz" : "person2"},
{"nom" : "mike"},
]
},
{"rapper" :
[
{"blazz" : "person3"},
{"nom" : "jean"},
]
}
]
데이터를 재정렬 할 수 있습니까? 이와 같은 단일 엔트리 객체의 배열은 Handlebars와 잘 맞지 않습니다. 하나의'{blaze : 'person3', nom : 'jean'}'객체가 훨씬 쉽게 작업 할 수 있습니다. –
불행히도 서식 데이터를 유지해야합니다. – user3264208