我试图回复合并的可观察触摸和mousedown事件来切换菜单打开/关闭。问题是处理切换的代码运行了两次。我已通过将事件记录到控制台来确认这一点,并且它记录了相同的事件:
export const toggleMenu = (openButton, closeButton) => {
return Observable.merge(
Observable.fromEvent(openButton, 'mousedown'),
Observable.fromEvent(closeButton, 'mousedown'))
.subscribe((event) => {
console.log(event);
if (elementIsVisible(nav)) {
hideElement(nav);
} else {
showElement(nav);
}
});
};
所以这最终打开然后立即关闭菜单。
答案 0 :(得分:0)
好的,这是我的错误。实际发布的代码很好,但我实例化了两次调用此函数的类,因此有两个订阅。