如何在Bacon.js中合并两个属性

时间:2015-01-23 00:53:13

标签: javascript angularjs functional-programming reactive-programming bacon.js

说我有两个Bacon.js属性。一个是儿童对象 - 也许只是他的名字。他或她穿着的另一件物品 - 裤子颜色和衬衫颜色。

在我的情况下,我使用Angular-Bacon从AngularJS范围变量创建属性。

如何获得将两者合并在一起的属性?我希望我可以做类似以下的事情(假设我有Lodash可用):

var outfit = $scope.$watchCollectionAsProperty('outfit'); // {shirt: 'blue', pants: 'green'}
var child = $scope.$watchCollectionAsProperty('child'); // {name: 'Jimmy'}

var clothedChild = outfit.map(function(it) {
    return _.merge(it, child.value());
});

但这不起作用。

我是RFP的新手,我正试图在Angular应用程序中使用Bacon,但我很难绕过它。

任何提示都将不胜感激。

1 个答案:

答案 0 :(得分:1)

答案并不像我想象的那么复杂 - 我似乎并不知道要寻找的术语,似乎。

var clothedChild = Bacon.combineWith(function(p1, p2) {
    return _.merge({}, p1, p2);
}, child, outfit);