Size: a a a

2021 April 14

VS

Vitalii Saienko in React Kyiv
Set.prototype.has ~ O(1)
Array.prototype.includes - O(n)
В дуже великими масивами даних Сет швидший. Але, виходить, що .has працює з примітивами.
источник

С

Саша in React Kyiv
как лучше вернуть пользователя на страницу, на которой он находился до логина?
источник

SG

Stas G in React Kyiv
в своём приложении?
источник

С

Саша in React Kyiv
да, есть кнопка коммента, она только для залогиненных, нужно что бы он залогинился, и опять попал на стрницу где пишет коммент
источник

OB

Oleksii Boiko in React Kyiv
я додавав в урлу частинку ?redirected_from=url
источник

SG

Stas G in React Kyiv
можешь при редиректе на логин исходный адрес передавать как квери-параметр, либо передавать объект стейта в history.push при редиректе на логин, если не хочешь урл
источник

С

Саша in React Kyiv
Угу, спасибо, так и сделаю
источник

DD

Dmytro Dovhan in React Kyiv
а есть адепты чистого useReducer? есть простая форма, есть кнопка сабмит, как канонично сделать валидацию по клику, и сабмит если она успешна?

из того что приходит в голову - пересчитывать валидации на каждый апдейт или сайд эффекты в редюсере

но как то это не очень красиво
источник

В-

Вернер Карл Гейзенбе... in React Kyiv
А что делать валидацию на каждое изменение стейта поля это плохая практика?
источник

В-

Вернер Карл Гейзенбе... in React Kyiv
Подскажите какой-то модуль для отображения медиа контента(видео/картинки) в реакте с сопутствующими данными
источник

DD

Dmytro Dovhan in React Kyiv
ну не то что бы совсем плохая, но это как минимум лишние вычисления с одной стороны, и "мигающие" ошибки по мере ввода - что не очень хорошо с точки зрения ux
источник

В-

Вернер Карл Гейзенбе... in React Kyiv
Ну, можно же debounce применять, валидация по клику как по мне тоже не очень удобная, заполнил всю форму, нажал а потом все красное, или например результат по одному полю может зависеть от другого
источник
2021 April 15

MK

Max Kovalenko in React Kyiv
Дамы и господа, есть вопрос на миллион. Помогите кто может. Юзаю на проекте редакс. При дистпатче экшена в пейлоаде которого есть undefined значения для каких-то полей, эти поля вырезаются, и они пропадают как в redux dev tools, так и в работе с редакс сагой в дальнейшем. Undefined нужно передать на сервак (вот такая у нас странная апишка). Кто сталкивался с таким?
источник

MK

Max Kovalenko in React Kyiv
в консоли эти поля есть
источник

В

Вроде бы Артем... in React Kyiv
Передать его строкой можно)?
источник

MK

Max Kovalenko in React Kyiv
кого передать? undefined?
источник

В

Вроде бы Артем... in React Kyiv
Да, но строкой
источник

В

Вроде бы Артем... in React Kyiv
Редакс не даёт передать undefined? На каком этапе они вырезаются?
источник

SK

Stanislav Krichevski... in React Kyiv
Всем доброго дня) Есть вопрос по логике! Кому не сложно или просто хочет немного размять мозг. Но вот я что-то пока не нашёл алгоритм решения.
Вопрос следующий...
Есть структура данных:
const categoriesTreeData = [
 {
   title: `Все товары`,
   key: "0-0",
   children: [
     {
       title: `Волосы`,
       key: "0-0-0",
       children: [
         {
           title: `Уход за волосами`,
           key: "0-0-0-0",
           children: [
             {
               title: `Кондиционеры, бальзамы`,
               key: "0-0-0-0-0",
             },
             {
               title: `Кремы`,
               key: "0-0-0-0-1",
             },
             {
               title: `Лосьоны, ампулы для волос`,
               key: "0-0-0-0-2",
             },
             {
               title:`Маски для волос`,
               key: "0-0-0-0-3",
             },
             {
               title: `Масла, флюиды для волос`,
               key: "0-0-0-0-4",
             },
             {
               title:`Пиллинги, скрабы для кожи головы`,
               key: "0-0-0-0-5",
             },
             {
               title:`Шампуни`,
               key: "0-0-0-0-6",
             },
           ],
         },
         {
           title: `Уход за волосами 2`,
           key: "0-0-0-1",
           children: [
             {
               title: `Кондиционеры, бальзамы`,
               key: "0-0-0-1-0",
             },
             {
               title: `Кремы`,
               key: "0-0-0-1-1",
             },
             {
               title: `Лосьоны, ампулы для волос`,
               key: "0-0-0-1-2",
             },
           ],
         },
       ],
     },  
   ],
 },
];


Нужно достать объект из данных по ключу: "0-0-0-1" (это Уход за волосами 2), узнать длину его чилдренов для присваивания ключа новому чилдрену, и добавить новый чилдрен (). и вернуть уже обновлённый categoriesTreeData
источник

SK

Stanislav Krichevski... in React Kyiv
Удаление и редактирование этих полей я решил рекурсивным обходом.
const filterByKey = (source, num) => {
   return source.filter((record) => {
     if (!!record.children && record.children.length > 0) {
       record.children = filterByKey(record.children, num);
     }
     return record.key !== num;
   });
 };
const mappingByKey = (source, num, value) => {
   return source.map((record) => {
     if (!!record.children && record.children.length > 0) {
       record.children = mappingByKey(record.children, num, value);
     }
     return { ...record, title: record.key === num ? value : record.title };
   });
 };
Но вот достать необходимый вложенный объект, добавить ему чилдрен, сформировать ключ для чилдрена.... тут что-то меня мозг пока подводит
источник