스트림에 반응하기

3706 단어
이제 기본 스트림이 생겼습니다. 이에 대해 어떻게 대응할 수 있습니까?
항상 단순함을 염두에 두고 여기에 솔루션이 있습니다.


function Stream (value) {
  let storedvalue = value
  let mappers = []
  function stream (newvalue) {
    if (arguments.length) {
      mappers.map(f => f(newvalue))
      storedvalue = newvalue
    }
    return storedvalue
  }
  stream.map = function (f) {
    mappers.push(f)
  }
  return stream
}

s = Stream()

document.addEventListener("mousemove", s)

s.map(t => divmouse.innerHTML = (`<h2>(${t.clientX}, ${t.clientY})</h2>`)) 


여기에서 테스트할 수 있습니다reactions.

좋은 웹페이지 즐겨찾기