1

編集: 新しいビュー宣言にパラメーターを渡すことはできますか? のようなもの

new articleView({
    template: "my desired template",
})

オブジェクトの配列があるとします。各オブジェクトはトピックを表し、いくつかのプロパティ (タイトル、テンプレートの種類、記事の配列) を含んでいます。すべてのトピックは、いくつかのテンプレートの違いを除いてほぼ同じにレンダリングされます。

バックボーンを使用していますが、一般的な質問があります。各「トピック」は、同じコレクション タイプの個別のインスタンスにする必要がありますか? 各トピックで使用するテンプレート タイプはどこで宣言すればよいですか? コレクションに可変テンプレート タイプ プロパティを含める必要がありますか?

var topics = [
    {
        title: "Topic One",
        template: "detailedView",
        articles: [
            {
                 title: "A very good article",
                 timestamp: "2013-01-24"
            },
            {
                 //more articles here
            }
        ]
    },
    {
         //another topic here...
    }  

];
4

1 に答える 1

1

最初の質問に答えるために、新しいビューをインスタンス化するときにパラメーターを渡すことができます。ドキュメントの関連部分は次のとおりです。

新しいビューを作成するとき、渡すオプションは、ビューに既に存在するデフォルトのオプションにマージされた後、後で参照できるように this.options としてビューに添付されます。

したがって、templateパラメーターは次のようにviewインスタンスで使用できます。

var template = this.options.template;

modelあなたの一般的な質問に答えるために、各トピックを表すために同じ型の個別のインスタンスを含む単一のコレクションを定義する必要があると思いますか? その場合、データ構造の説明に基づいて、これが良い方法であることをお勧めします。トピックmodelには、そのテンプレートを識別するためのプロパティを含めることができます。

于 2013-01-25T00:18:41.337 に答える