2012-06-22 2 views
5

Ich habe einen infinite scroller, der einer Seite neue Elemente hinzufügt, wenn der Benutzer scrollt. Ich möchte, dass mehrere Abonnenten an ein Ereignis gebunden werden können, das jedes Mal ausgelöst wird, wenn neue Elemente hinzugefügt werden.Brennen von benutzerdefinierten Ereignissen aus ember.js Backbone-Stil

Ist es für mich möglich, ein benutzerdefiniertes Ereignis wie ich in Backbone zu erhöhen?

Zum Beispiel in Backbone ein evented Modell wie das kann ich schaffen:

this.vent = _.extend({}, Backbone.Events); 

dann kann ich binden Ereignisse wie folgt aus:

this.vent.bind('my:custom:event', this.handler); 

Und ich kann sie dann wie folgt aus Feuer:

this.trigger('my:custom:event', args); 

Kann ich Ember.evented so verwenden oder gibt es einen besseren Weg?

+1

möglich duplicate of [Unterstützt EmberJs Eventing Pattern für Publish/Subscriber?] (Http://StackOverflow.com/questions/9744777/does-emberjs-support-publish-subscriber-Eventing-Pattern) – pangratz

Antwort

2

Wenn Sie möchten, dass Ember.js die Ereignisse erkennt, können Sie diese Ereignisse zu Ihrer App-Definition hinzufügen. Check out this Understanding Ember.js article, direkt unter der Liste der "enthaltenen" Ereignisse.

+0

Ich glaube an die Dokumentation Ihre Referenz bezieht sich nur auf vom Browser implementierte Ereignisse; speziell nicht die benutzerdefinierten Ereignisse, über die der Fragesteller spricht. Der richtige Ember-Feature-Bereich ist Ember.evented, der für beliebige/benutzerdefinierte Ereignisse verwendet wird. – Purrell

+0

@Purrell Ich benutze es um benutzerdefinierte (nicht browserspezifische) Ereignisse zu definieren. Über den Link "doc" in meiner Antwort rechts unterhalb der Liste der Standardereignisse heißt es: "Sie können dem Ereignisverteiler beim Erstellen einer neuen Anwendung zusätzliche Ereignisse hinzufügen:" – mspisars

Verwandte Themen