骨干Javascript ||重新使用集合

时间:2015-08-10 11:58:45

标签: javascript jquery backbone.js

我是骨干js的新手。

我有一个我在某些视图中使用的集合。我想在另一个视图中重新使用相同的集合。如何通过骨干js。 我从某些服务获得的所有收集数据 对于Ex; collectionA有一些在viewA中使用的数据。 我想在viewB中使用collectionA,其中viewB是一个路由页面。 目前正在发生的事情是collectionA仅限于viewA。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

Backbone应用程序中的一个好习惯是拥有一个全局事件总线,您可以使用该总线与应用程序的不同部分进行通信。

充分利用事件可以让您的应用程序分离。

如果你有一个可以从任何地方访问的全局App对象,你可以像这样附加一个Event总线:

// your global Application object
var App = { ... };

// setting up the event bus
App.eventBus = _.extend({}, Backbone.Events);

// in your viewA, on your collection fetched callback
...
onCollectionFetched(collection) {
    App.eventBus.trigger('collection:fetched', collection);
}

// in your viewB, setup a listener in your initialize, for example
...
initialize: function() {
    App.eventBus.on('collection:fetched', function(collection) {
        // do something
    });
}