Backbone を使い始めたばかりで、まだ内外を理解しています。
Underscore と Backbone を使用して JSON を単純に表示しようとしています。Underscore と $.getJSON を使用するだけで動作させることができますが、Backbone と接続しようとすると、試行内容に応じてさまざまなエラーが発生します。
また、モデルに値をハードコーディングすることで Backbone を動作させることもできましたが、すべてをまとめようとすると壁にぶつかります。どんな助けでも大歓迎です。
ここに私のアンダースコアテンプレートがあります:
<script type="text/html" id='trailTemplate'>
<% _.each(trails,function(trail){ %>
<%= trail.trailname %><br />
<% }); %>
</script>
そして、ここに私のバックボーンコードがあります:
var Trail = Backbone.Model.extend({
urlRoot: "trails.json"
});
var trail = new Trail({});
var TrailView = Backbone.View.extend({
el: '.page',
template: _.template($("#trailTemplate").html(), {trails:trail.fetch()}),
render: function(){
this.$el.html(this.template(this.model.toJSON()));
return this;
}
});
var trailView = new TrailView({
model: trail
});
trailView.render();
必要に応じて、ここに Trails.json があります
[
{
"trailhead": "Bear Lake",
"trailname": "Bear Lake",
"distance": ".5",
"gain": "20",
"level": "easy"
},
{
"trailhead": "Bear Lake",
"trailname": "Nymph Lake",
"distance": ".5",
"gain": "225",
"level": "fairly easy"
}
]