2015-05-27 2 views
0

Я пытаюсь использовать поток Бэкона как бесконечный цикл, но он не работает.Никогда не работает поток Bacon.js. Обратный вызов никогда не вызывает

var Bacon = require('baconjs'); 

var INTERVAL = 300; 

var tickStream = Bacon.interval(INTERVAL); 
var isMaster = tickStream.flatMap(function() { 
    console.log('I never see the message'); 
    return Bacon.once('some value'); 
}); 

Почему я ничего не вижу в консоли? Как я могу это исправить?

ответ

3

Вы не видите значение, поскольку в потоке нет подписчиков. Бэкон начинает прослушивание событий из источника при добавлении первого абонента (и прекращает прослушивание событий при удалении последнего абонента).

Вы можете исправить это, добавив подписчика, например.

var tickStream = Bacon.interval(INTERVAL); 
var isMaster = tickStream.flatMap(function() { 
    console.log('I never see the message'); 
    return Bacon.once('some value'); 
}); 
isMaster.onValue(function(value) { console.log(value) }); 
Смежные вопросы