Person
、というプロパティを持つfirstName
バックボーンモデルがある場合lastName
。通常、それへのアクセスはとのようperson.get('firstName')
ですperson.get('lastName')
。
person
コンテキストに公開されているハンドルバーテンプレートで同様のことを行うにはどうすればよいですか。
Person
、というプロパティを持つfirstName
バックボーンモデルがある場合lastName
。通常、それへのアクセスはとのようperson.get('firstName')
ですperson.get('lastName')
。
person
コンテキストに公開されているハンドルバーテンプレートで同様のことを行うにはどうすればよいですか。
ハンドルバーテンプレートをレンダリングするときは、モデルの属性を渡す必要があります。Model.toJSON
これを行うための推奨される方法は、モデルの内部attributes
ハッシュのコピーを返すを呼び出すことです。
var template = Handlebars.compile(templateHtml);
var rendered = template({ person: model.toJSON() });
テンプレートでは、プロパティ名でコンテキストにアクセスできます。
<span>{{person.firstName}} {{person.lastName}}</span>
実際、私は.toJSONを使用する場所が非常に多いので、バックボーンモデルを処理するためのハンドルバーの変更を開発しました。
https://gist.github.com/4710958
値がBackbone.Modelのインスタンスであるかどうかを確認し、そうである場合は.get()メソッドを呼び出します。
Backbone.Modelを使用するには、グローバルである必要があります。
{{ user.address.street }}
次のように解析されます:
user.get("adress").street