169 похожих чатов

Помогите понять, я пытаюсь сделать корзину, при клике на (в

корзину) добавляю в стейт массив, после перебираю его и показываю, все работает но суть вопроса в том как мне сравнивать значения, и если они одинаковые показывать только один элемент ??

27 ответов

14 просмотров
Влад- Автор вопроса

[...new Set()]

Alexandr Sachyshyn
[...new Set()]

не будет работать на массиве объектов

𝖊𝖙𝖍𝖔𝖗𝖟 😈
костыль

костыль или полная копия объекта?

Alexandr Sachyshyn
костыль или полная копия объекта?

new Set не будет работать на массиве объектов, если уж сравнивать не по ссылкам

Alexandr Sachyshyn
json.parse(json.stringify(obj)

Ну или какой-нибудь uniqWith из Ramda с deep проверкой на разность объектов. Либо uniq по id товаров в заказе, если есть уникальные идентификаторы

Влад
screenshot

Налицо неверная структура данных для корзины

Влад- Автор вопроса
Dmitriy Shuleshov
Налицо неверная структура данных для корзины

айм тичинг реакт енд зис май ферст сите

Влад- Автор вопроса
Влад
а какая верна? что меня передавать ?

самый простой - объект - где ключ это айди, а значение это полная модель сущности

Влад
а какая верна? что меня передавать ?

Я бы на вашем месте корзину хранил как { [productId]: { amount: 10, price: 25 } }

Yuri Kostin
Ну или какой-нибудь uniqWith из Ramda с deep прове...

по айди да, предлагал, что если нет объекта с таким id, то добавлять его

Alexandr Sachyshyn
screenshot

Здесь довольно много итераций

Alexandr Sachyshyn
screenshot

ну и говнина)) 1 итерация через filter, делов то

𝖊𝖙𝖍𝖔𝖗𝖟 😈
желательно еще дублировать айди для key

Object.entries(cartObj).map( ([id, {amount, price}]) => <CartItem key={id} amount={amount} price={price} /> )

Dmitriy Shuleshov
Object.entries(cartObj).map( ([id, {amount, price...

а просто через values было бы читабельней

Dmitriy Shuleshov
Нисколько

отсутствовала бы деструктуризация массива, хотя бы

𝖊𝖙𝖍𝖔𝖗𝖟 😈
отсутствовала бы деструктуризация массива, хотя бы

* не пришлось бы дублировать id в стрктуре Ну а вообще вкусовщина и так и так верно

Dmitriy Shuleshov
* не пришлось бы дублировать id в стрктуре Ну а в...

а если в модели бы был заранее айди? Удалять из объекта?

𝖊𝖙𝖍𝖔𝖗𝖟 😈
а если в модели бы был заранее айди? Удалять из об...

Там в 90% будет много чего лишнего, поэтому данные в модель корзины клал бы точечно

Похожие вопросы

Обсуждают сегодня

Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Коллеги, добрый вечер. Создаю коллекцию от TFPGMap, ключ - перечисление, значение - целое. Нужно отсортировать коллекцию по значению. Как это можно сделать?
Kirill Filippenok
11
Скажи а ты когда этот канал создавал ты уже дельфи не любил, или это со временем пришло?
Роман Лях (rgreat)
18
Привет, такой вопросик появился кажется ли вам что Rust слишком сложный/строгий для высокоуровневого программирования и слишком "безопасный"/строгий для низкоуровневого?
Крокант
10
Всем привет! Использую кастомное модальное диалоговое окошко, все по классике - mrOK, mrCancel как ModalResult. Однако есть нюанс - в главной форме есть универсальный обработч...
Олег Гранишевский
20
Карта сайта