Breezejs中是否有一个事件在添加或删除实体时被触发?

时间:2013-03-16 02:09:40

标签: breeze

我已经四处寻找答案,但到目前为止我已经干了。我想要做的是在特定视图模型中有一个事件处理程序,它监听Breeze是否添加或删除了实体,以便视图模型可以对它正在管理的数组采取适当的操作。这样的事件是否存在?

我的Jobs视图的Jobs视图模型包含Job实体的ko.observableArray和NewJob视图的NewJob视图模型等。两种视图模型共享相同的数据服务。我想简单地使用NewJob视图模型中的DataService将新的Job实体插入到Breeze中,然后让Jobs视图模型简单地订阅一个事件,这样就可以知道将新Job添加到它的Jobs数组中。 / p>

TIA

1 个答案:

答案 0 :(得分:2)

Breeze EntityManager有一个entityChanged event可以像这样使用:

var em = new EntityManager( {serviceName: "api/NorthwindIBModel" });
em.entityChanged.subscribe(function(changeArgs) {
    // This code will be executed any time any entity within the entityManager is added, 
    // modified, deleted or detached for any reason. 
    var action = changeArgs.entityAction;
    var entity = changeArgs.entity;
    // .. do something to this entity when it is changed.
});