私はbackbone+requireを備えたアプリケーションの開発を始めています。モデルの同じインスタンスを複数のビュー間で共有したいと思います。モデルをシングルトンとして定義したため、すべてのビューがモデルの同じインスタンスにアクセスします。
私は2つのオプションを評価しました:
1.ビューを伝達するためのパラメーターとしてモデルのインスタンスでイベントを使用します
2.ビュー間でモデルの同じインスタンスを共有します。
モデルに新しい行を追加して、2番目のオプションを選択しました。
define(['Underscore','Backbone'],
function(_, Backbone) {
var Experience = Backbone.Model.extend({
defaults: {
'id' : 1,
'date' : '2012-10-11 '
}
});
if (this.model === undefined) return new Experience();
});
次に、モデルをビューにバインドします
define([ 'jQuery','Underscore','Backbone','models/experience'
], function($, _, Backbone, Experience){
var MyView1 = Backbone.View.extend({
initialize: function () {
this.model = Experience;
....
このように、このモデルのすべてのビューがそれを共有します。
バックボーンでモデルのインスタンスを共有するためのより良い方法はありますか?イベントとインスタンスをパラメーターとして使用する方がよいでしょうか?