Size: a a a

React — русскоговорящее сообщество

2021 March 18

В

Влад in React — русскоговорящее сообщество
useGesture(
   {
     onDrag: ({ vxvy: [vx], last, tap }: any) => {
       if (tap) {
         return
       }
       if (last && vx < 0.3) {
         onCalendarDateTypeChange(false)
       } else if (last && vx > 0.3) {
         onCalendarDateTypeChange(true)
       }
     },
   },
   {
     domTarget: swipeRef as MutableRefObject<null>,
   }
 )
источник

В

Влад in React — русскоговорящее сообщество
как можно упростить код в плане if
источник

NN

Nik Nik in React — русскоговорящее сообщество
Влад
useGesture(
   {
     onDrag: ({ vxvy: [vx], last, tap }: any) => {
       if (tap) {
         return
       }
       if (last && vx < 0.3) {
         onCalendarDateTypeChange(false)
       } else if (last && vx > 0.3) {
         onCalendarDateTypeChange(true)
       }
     },
   },
   {
     domTarget: swipeRef as MutableRefObject<null>,
   }
 )
зачем else if если нет else?
источник

В

Влад in React — русскоговорящее сообщество
Nik Nik
зачем else if если нет else?
ну как правильнее будет
источник

В

Влад in React — русскоговорящее сообщество
ясно
источник

NN

Nik Nik in React — русскоговорящее сообщество
Влад
ясно
ты заставил меня встать к комплюнтеру.
думаю, что оптимально будет так    
      if (tap) {
        return;
      }
      if (last && vx < 0.3) {
        onCalendarDateTypeChange(false);
        return;
      }
      onCalendarDateTypeChange(true);
источник

В

Влад in React — русскоговорящее сообщество
Nik Nik
ты заставил меня встать к комплюнтеру.
думаю, что оптимально будет так    
      if (tap) {
        return;
      }
      if (last && vx < 0.3) {
        onCalendarDateTypeChange(false);
        return;
      }
      onCalendarDateTypeChange(true);
onDrag: ({ vxvy: [vx], last, tap }: any) => {
 if (tap || !last) return;
 onCalendarDateTypeChange(vx > 0.3);
},

или

onDrag: ({ vxvy: [vx], last, tap }: any) => {
 if (!tap && last)
   onCalendarDateTypeChange(vx > 0.3);
},

или

onDrag: ({ vxvy: [vx], last, tap }: any) =>
 !tap && last && onCalendarDateTypeChange(vx > 0.3)


< 0.3 и > 0.3 я так понимаю это ошибка в коде (должно быть < 0.3 и >= 0.3 или <= 0.3 и > 0.3)
источник

В

Влад in React — русскоговорящее сообщество
тут уже порешали
источник

MK

Max Kiner in React — русскоговорящее сообщество
Можно в хуке, который диспатчит экшен, можно там где этот хук вызывается
источник

MK

Max Kiner in React — русскоговорящее сообщество
useHistory - тоже хук, а хуки можно вызывать только в определенных местах
источник

MK

Max Kiner in React — русскоговорящее сообщество
И да, вроде бы history.push() - асинхронная операция
источник

MK

Max Kiner in React — русскоговорящее сообщество
А какие данные куда должны передаться?
источник

MK

Max Kiner in React — русскоговорящее сообщество
Здесь же редакс - можно просто брать данные из стора
источник

MK

Max Kiner in React — русскоговорящее сообщество
Да норм, я тоже еще джун, не так давно тоже ничего не понимал. В этой профессии придётся постоянно искать информацию самому :)
источник

MK

Max Kiner in React — русскоговорящее сообщество
Редюсер куда данные сохраняет?
источник

MK

Max Kiner in React — русскоговорящее сообщество
Главный источник актуальной инфы - офф документация
источник

MK

Max Kiner in React — русскоговорящее сообщество
Ну вот, на новой странице нужно достать данные из store.data
источник

MK

Max Kiner in React — русскоговорящее сообщество
С помощью useSelector или connect
источник

D

Dzhimail in React — русскоговорящее сообщество
Здравствуйте. Читал статьи, но все равно есть желание спросить у вас. Какие преимущества есть у React по сравнению с Vue? Чем он лучше?
источник

MK

Max Kiner in React — русскоговорящее сообщество
Dzhimail
Здравствуйте. Читал статьи, но все равно есть желание спросить у вас. Какие преимущества есть у React по сравнению с Vue? Чем он лучше?
Ну как по мне - React лучше с тайпскриптом работает. А у Vue порог вхождения на мой взгляд пониже (особенно 3 версия с composition api)
источник