私はバックボーンを初めて利用しています。私はそれがSaikuで使用されているのを見てきました。私は下の行を見つけました。Backbone.jsとSaikuのトリガーイベント
Saiku.session.trigger('workspace:new', { workspace: this });
'workspace:new'はイベントですか?バックボーントリガーはそれをイベントとしてどのように認識しますか?
私はバックボーンを初めて利用しています。私はそれがSaikuで使用されているのを見てきました。私は下の行を見つけました。Backbone.jsとSaikuのトリガーイベント
Saiku.session.trigger('workspace:new', { workspace: this });
'workspace:new'はイベントですか?バックボーントリガーはそれをイベントとしてどのように認識しますか?
短い答え:はい、workspace:new
はイベントです。
バックボーンには、聴くことができる組み込みのイベントがいくつかあります。しかし、このコードのようにカスタムイベントをトリガーすることもできます。イベントは文字列(この場合は"workspace:new"
)のみで識別されます。 Backbone's Event Moduleを継承したオブジェクトに対してtrigger
を呼び出すと、そのイベントは発生します。 trigger
の2番目のパラメータとして、イベントハンドラ関数からアクセス可能なものについて、イベントに関するいくつかのデータを渡すことができます。
通常、他の場所では、そのイベントが発生するのを待つコードがあります。これは、.on
または.listenTo
メソッドを呼び出すことによって設定されます。
は、ここで基本的な例を示します(アクションon JSBinでそれを参照してください)解答用
var model = new Backbone.Model();
model.on('my-event', function (data) {
console.log("my-event happened!");
console.log(data);
});
model.trigger('my-event');
model.trigger('my-event', 'some-data');
model.trigger('my-event', { anything: 'works' });
おかげで、それは参考になりました! – SDJ