Кажется, что ev.off() убивает слушателей при переключении между вызовами 2 map()

У меня есть список с фильтром, который переключается между "все" и "избранное". Это работает хорошо. Однако, когда я активирую ev.off () с комментариями в обоих методах, переключение с одного фильтра на другой больше не даст результатов. Оба списка останутся пустыми с этого момента. (кстати: поскольку ev.off () все еще экспериментальный, пока я в порядке, не использую его. Возможно, эта информация может помочь в будущем выпуске)

1.subscribe () метод, который вызывает соответствующие методы списка

export const subscribe          = (payload, cb) => {
const filter = payload.filter
const user   = payload.user
switch (filter) {
  case 'all' :
    subscribeAllSkills(cb)
    break
  case 'favorites' :
    subscribeFavoriteSkills(user, cb)
    break
    ...
  }
}

2.subscribeAllSkills ()

const subscribeAllSkills        = (cb) => {
  gun.get('skill')
     .map()
     .on(
       (skill, pk, ctx, ev) => {
           //ev.off()
           cb(skill, pk)
       }
     )
}

3.

const subscribeFavoriteSkills   = (user, cb) => {
  gun.get('user')
   .get(user.pk)
   .get('favorite_skill')
   .map()
   .on(
     (skill, pk, ctx, ev) => {
       //ev.off()
       cb(skill, pk)
     }
   )
}

0 ответов

Другие вопросы по тегам