акионка.
горшочек не варит, извини)
{ Amir }
А, да, извини, ты прав
и ты прав насчет ==, ===
{ Amir }
читал статью где опровергали миф про медленность ===
{ Amir }
поначалу кажется что в js какой-то пздц с этим, а потом когда разбираешь механику работы, то всё становиться логично)
{ Amir }
ты про это писал?
Пр. Вова
Нее
Пр. Вова
Ищу людей в команду на хакатон.
No Name
Ребят, направьте с джейсоном плиз! Есть массив обьектов(американо,капучино ,итд), маплю и работаю с ним Возникла потребность ввести латте 3х размеров.Мне получается после списка единичных товаров, вводить обьект латте,а в нем массив, у которого будет 3 обьекта размеров?Как его мапить в этом случае?При нажатии на итем у меня он добавляется в корзину,а в случае с латте, нужно чтобы вылезало окно с 3мя размерами,и по клику так же добавлялось как и на первой странице
SV
видеоурок какой-то?
не..я сам крафтил карточки товаров. тренил чистый жс
SV
https://tipamag.github.io/product-cards-onlyJs/
SV
во ..нашел...там имитация разбора с джейсона как раз
SV
говнокодище редкое...но мейби посмотри ...мож поможет
No Name
не..я сам крафтил карточки товаров. тренил чистый жс
ну селекторы это вроде редаксовская штука? Видел как выносили через обджект кейс и сразу мапили его, но у меня просто в разделе кофе может быть одноразмерный и 3х размерный, то есть вразнобой, и я чет застопорился)
SV
посмотри первую карточку
SV
https://github.com/TipaMag/product-cards-onlyJs
SV
там найди у меня джейсон файлик...там данные лежат и глянь какк я их вытянул... там хардкод правда...но относительно понятно
SV
только на код фильтрации не смотри...а то в камень превратишься)
No Name
посмотри первую карточку
ну меня именно формат джейсона застопорил Если бы у меня был опыт в js я бы понял, а так не переживай, не понял ничего😀😀😀 Но я знаю что моё решение на поверхности )
SV
ну меня именно формат джейсона застопорил Если бы у меня был опыт в js я бы понял, а так не переживай, не понял ничего😀😀😀 Но я знаю что моё решение на поверхности )
в файлы глянь там у меня как раз джейсон кусок есть и у карточки разные размеры памяти...как твои размеры стаканов)
No Name
просто если делать обьекты групп товаров и массивы содержимого, то там object.keys и мап потом Мне либо итемов для всех вводить размер, но если один, то по дефолту М, а если остальные, то в массиве будет 3 разных Либо какое-то более простое решение есть
SV
ну для реакта мне кажется это слишком замудренно будет так проверять)
ну по сути у тебя будут параметры товара..если есть то выводи параметр и его опции в селект инпут или как ты там хотел
No Name
ну по сути у тебя будут параметры товара..если есть то выводи параметр и его опции в селект инпут или как ты там хотел
ну вопрос не в селекте, я именно с нужным форматом джейсона не могу разобраться буду копать дальше)Спасибо за ответ!)
Viktar
как мне тут https://codepen.io/viktor-shatalov/pen/JjoJBrX?editors=0010 сделвть проверку, что если форма отправилась, то показать попап, который у меня в стейт записан как showPopup: false,
Твой Popup нужно показывать не тогда, когда ты форму отправил, а когда получил от сервера ответ о том, что данные получены (а то может получиться, что данные отправлены успешно, но не получены сервером, а ты пользователю покажешь окно с успешной регистрацией или что-то там еще). И такого рода данные (showPopup, token) нужно держать не в локальном стейте компоненты, а в сторе приложения.
Arthur
SV
Не желательно, а только так)
а если ты художник.?!?...)
No Name
Понять какой джейсон мне нужен) У меня сейчас такой const [drinks, setDrinks] = useState([{ id: 213, title: "black tea", coffeeWeight: 0, teaWeight: 15, milkWeight: 0, price: 25, url: "" }, { id: 214, title: "green tea", coffeeWeight: 0, teaWeight: 15, milkWeight: 0, price: 20, url: "" }] Ну итд я его маплю, у меня карточки.По клику на карточку товар добавляется в корзину Я хочу в некоторые товары добавить размеры.По клику на карточку латте,должно открываться окошко в нем будет мап этих размеров как и обычные итемы,то есть нужно промежуточное звено в виде этого окошка ,при условии если есть размеры у итема И тут как бы либо выносить товары в обьекты и раскрывать их при помощи обжект кейс и потом мап размеров, если размер один то по клику в корзину,а если больше, то вызывать компоненту окошка Либо мудрить дальше как-то)
Arthur
а если ты художник.?!?...)
Тогда тебе не в программисты)
Viktar
ну эт уже баян)
Это не баян, это JavaScript во всей своей красе! Данный косяк возникает из-зи того, что числа хранятся в двоичной системе исчесления, в которой точность ограничена и представление иное, в ней 0.01 на самом деле выглядит примерно 0.0099999999 или 0.010000001 поэтому при сложении таких чисел возникают проблемы показанные на видео, важно учитывать это в интернет магазинах, т.к. при выборе нескольких товаров с дробной ценой может возникнуть проблема. Дробные числа в JS лучше хранить в виде целых с последующим делением и округлением до нужной точности.
Arthur
Понять какой джейсон мне нужен) У меня сейчас такой const [drinks, setDrinks] = useState([{ id: 213, title: "black tea", coffeeWeight: 0, teaWeight: 15, milkWeight: 0, price: 25, url: "" }, { id: 214, title: "green tea", coffeeWeight: 0, teaWeight: 15, milkWeight: 0, price: 20, url: "" }] Ну итд я его маплю, у меня карточки.По клику на карточку товар добавляется в корзину Я хочу в некоторые товары добавить размеры.По клику на карточку латте,должно открываться окошко в нем будет мап этих размеров как и обычные итемы,то есть нужно промежуточное звено в виде этого окошка ,при условии если есть размеры у итема И тут как бы либо выносить товары в обьекты и раскрывать их при помощи обжект кейс и потом мап размеров, если размер один то по клику в корзину,а если больше, то вызывать компоненту окошка Либо мудрить дальше как-то)
Если я верно понял : добавь в объекты карточек поле с массивом доступных размеров и усё.... Ну и поле "выбранный размер", в котором будет храниться выбор клиента
SV
Понять какой джейсон мне нужен) У меня сейчас такой const [drinks, setDrinks] = useState([{ id: 213, title: "black tea", coffeeWeight: 0, teaWeight: 15, milkWeight: 0, price: 25, url: "" }, { id: 214, title: "green tea", coffeeWeight: 0, teaWeight: 15, milkWeight: 0, price: 20, url: "" }] Ну итд я его маплю, у меня карточки.По клику на карточку товар добавляется в корзину Я хочу в некоторые товары добавить размеры.По клику на карточку латте,должно открываться окошко в нем будет мап этих размеров как и обычные итемы,то есть нужно промежуточное звено в виде этого окошка ,при условии если есть размеры у итема И тут как бы либо выносить товары в обьекты и раскрывать их при помощи обжект кейс и потом мап размеров, если размер один то по клику в корзину,а если больше, то вызывать компоненту окошка Либо мудрить дальше как-то)
ну добавить итему еще moreParams: ["L","XL","XXL"] проверять наличие параметра... ну типа такого
No Name
Ну разные размеры это разный вес, цена итд, поэтому каждый размер должен быть отдельным товаром с разными id. поэтому в одну карточку не вариант добавлять
No Name
то есть Латте должно быть обьектом, с массивом других 3х латте видимо
Edgar
Ты не поверишь, писал, специально для тебя
Зачем? :D Ну спасибо, раз уж ради меня
No Name
ну по ходу тогда если есть размеры то делать пересчёт веса и ингридиентов...по формуле своей какой-то
ну там не формула, там данные вводишь когда добавляешь товар.Поэтому делаю автоматизированно сразу
Viktar
Зачем? :D Ну спасибо, раз уж ради меня
Я подумал, что ты реально не в курсе, а ты стебешься)))
Edgar
Я подумал, что ты реально не в курсе, а ты стебешься)))
Так написал же, что это баян, ибо каждый, кто начинает учит js, почти сразу с этим сталкивается)
Arthur
Каждая единица - массив
No Name
Тогда по-другому
а размерная группа массив обьектов?
SV
Каждая единица - массив
если без формул то по ходу вариант
SV
массив айтем с размерными объектами
SV
в каждом обждекте свои пропорции и т.д
No Name
массив айтем с размерными объектами
тогда одинаковый id будет и когда добавишь латте М и латте S будет конфликт скорее всего
No Name
выход это оставить как было, просто отдельно добавить латте м латте с и латте Л но хотелось сделать красивее и как-то сгруппировать
SV
тогда одинаковый id будет и когда добавишь латте М и латте S будет конфликт скорее всего
та можно брать айдишник айтема а размерам уникальный не давать...хотя хызы
SV
с мобилы сижу не могу накидать)
Arthur
{ latte:{ size1:{...},size2:{...} }, espresso:{size1:{...}} }
No Name
{ latte:{ size1:{...},size2:{...} }, espresso:{size1:{...}} }
вместо мап тогда object.keys + map будет получается?
Arthur
Ну да
No Name
Попробую)Спасибо ребят!
Arthur
Там проверку на length, с нее уже понимать буш давать выбор по размеру или нет
Arthur
На здоровье
Oleg
Здарова бандиты
Oleg
😎
Oleg
Опять умничаете
Oleg
😆😆
Sergej
Привет всем! Хотел бы спросить ваше мнение по поводу UI фраймворков для React? какие используете Materialize UI, Bulma, Senamatic или всётаки Bootstrap? не смущает, что Bootsrap Jquery использует? :)
Дмитрий
https://react-bootstrap.github.io/
Oleg
material ui
Oleg
mui не позволяет делать легко адаптивность
Oleg
мб бутстрап в помощ
Oleg
либо флексить как то самому
Vadim
Но материал очень тяжеловесный
Vadim
Нужно стили выковыривать, чтобы стилизовать поглубже
Sergej
Да в Material-ui меня это тоже смущает
Vadim
Вообще, там есть всё, как и в semantic