如何删除监听器

How to remove a listener

我设置了新消息到达频道时的监听器

conversation.on('message.new', async (event) => {
// code
});

从频道中删除参与者时,我需要删除 message.new 监听器。我为听众调用 off()。

conversation.on('member.removed', async (event) => {
   conversation.off('message.new', async (event) => {});
});

但第一个侦听器仍在工作。

您需要保存您的侦听器以便稍后将其删除,因为将检查它是否相等。在您的代码段中,您正在传递一个新函数,因此它不会被删除。

const yourHandler = async (event) => {
  // code
}

// later

conversation.off(eventType, yourHandler);