RxJS 笔记 11 rxjx6.4.0 拖拽

<body>
<div id="drag"></div>
</body>
html,
body {
  height: 100%;
  background-color: tomato;
  position: relative;
}

#drag {
  position: absolute;
  display: inline-block;
  width: 100px;
  height: 100px;
  background-color: #fff;
  cursor: all-scroll;
}
import { fromEvent } from 'rxjs';

const dragDOM = document.querySelector('#drag');
const body = document.body;
let isMove = false;

fromEvent(dragDOM, 'mousedown').subscribe(() => {
    this.isMove = true;
});
fromEvent(body, 'mousemove').subscribe((event) => {
    if (isMove) {
        dragDOM.style.left = event.clientX + 'px';
        dragDOM.style.top = event.clientY + 'px';
    }
});
fromEvent(body, 'mouseup').subscribe(() => {
    isMove = false;
});