2014-04-29 3 views
0

저는 Bacon.js를 처음 사용하고 있으며, 어떻게 작동하는지 알기 위해 많은 노력을하고 있습니다. 그래서, 변수를 사용하는 방법이 있습니다, 예를 들어, URL의 해시는 마치 onVariableChange 이벤트의 EventStream처럼 보입니다. 미안 내가 쓰고있는 것이 어색하다면.변수를 Bacon.js의 EventStream 또는 Property로 사용하십시오.

var hash = window.location.hash.slice(1, window.location.hash.length); 

newdata = hash.asEventStream("change").onValue(function(){**do_something_with_new_hash_value();** 
}); 

답변

1

asEventStream는 jQuery를 이벤트에서 Bacon.js EventStream를 만듭니다

여기 내 코드입니다. 따라서 JavaScript 변수가 아닌 jQuery 객체에만 적용 할 수 있습니다. 을있을 필요가 있기 때문에,

$(window).asEventStream('hashchange') 
     .map(function() { return window.location.hash; }); 

EventStream 또는 재산권에 itsself하여 변수를 변환하는 방법은 없습니다 : 그래서 귀하의 경우에 당신은 변화에서 EventStream를 만들기 위해 jQuery를/HTML5 이벤트 hashchange을 사용할 수 있습니다 일반 변수가 제공하지 않는 변경 사항을 알리는 방법. 그러나 변수가 변경 될 때마다 push을 호출하면 Bacon.Bus을 사용하여 EventStream 또는 Property를 만들 수 있습니다.

+0

야, 끝내 주네! 그게 내가 원하는 것 이상이야. –

관련 문제