當部分映射功能(不是每一個可能的輸入是有效的)工作,我最終作出一個小幫手: function strictMap(property, f) {
return property.withHandler(function (ev) {
try {
var x = ev.fmap(f);
// force
if (x.hasValue()) {
所以我對功能性編程範例相當陌生,特別是對於Bacon.js和FRP而言是新的。 我需要一些關於如何概念化FRP控制流的建議。我有一個計時器在事件流中倒數到零。當它達到零時,我想隱藏HTML定時器計數器並停止事件流。 timer.coffee # decrement function
dec = (x,y) ->
x-y
# Create a timer counting down
有時我想過濾出流中的某些錯誤。我想寫這樣的: stream
.filterError (error) ->
error.type is 'foo'
但是沒有filterError方法。 作爲替代方案,我認爲我可以使用errors().mapError將錯誤映射到值中,過濾它們,然後將它們映射回錯誤。但是,我沒有看到將流中的值轉換爲錯誤的方法。 # Filter only t