0

jQuery Mobilebackboneの経験を積むためのアプリケーションを作成しています。必要なデータを処理するnode.jsを使用して、「安らかな」API を作成しました。index.html で作成したすべての静的ページで問題なく動作します。しかし、特定のデータを使用してページを作成する必要がある場合id、少し迷っています。

たとえば、すべてのアイテム (/items) を表示したい場合、すべてのアイテムを一覧表示するdata-role=pagewith iditems がありますが、各アイテム (/items/1) の詳細ページに移動する必要がある場合は、いつでもその詳細ページを作成したいと考えています。ユーザーがアイテムの詳細を知りたい場合、つまり、ユーザーが URL スポット #3 にアクセスした場合などです。

これは可能ですか?

私のルーター: モデルは必要なすべてのデータを提供してくれます

Spoter.Router = Backbone.Router.extend({

    routes: {
        "":             "",
        "spot#:id":     "spotDetails" 

    },

    //Details on a certain spot with id
    spotDetails: function(id) {

        var spotDetailsContentDiv = Spoter.spotDetailsContent;
        spotDetailsContentDiv.empty();

        var spot = new Spoter.spotModel({id: id});
        spot.fetch({

            successCallback: function(data) {

                var spotDetailsView = new Spoter.spotDetailsView({

                    model: data
                });

                spotDetailsContentDiv.html(spotDetailsView.render().el);

            }

        });


    }

}); 

意見:

Spoter.spotDetailsView = Backbone.View.extend({

    render:function () {

        this.$el.html(this.template(this.model));
        return this;
    }
});

アンダースコア付きのテンプレート

<ul data-role="listview" data-theme="c" data-inset="true">
        <li>
            <a href="#">
            <h1><%= this.model.name %></h1>
            <p><%= this.model.description %></p>
            </a>
        </li>
</ul>
4

0 に答える 0