Главная Юзердоски Каталог Трекер NSFW Настройки

Программирование

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 524 118 117
JS Thread #268 /js/ Аноним 24/02/23 Птн 21:04:07 2621834 1
image.png 80Кб, 1050x1050
1050x1050
Предыдущий тред: >>2609772 (OP)

Больше пары строк кода в посте или на скриншоте ведут в ад.

Для программирования на HTML https://codesandbox.io
Для Node.js с консолькой https://repl.it/languages/nodejs

Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если/когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.

Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
Аноним 24/02/23 Птн 21:20:43 2621854 2
image.png 17Кб, 512x512
512x512
image.png 290Кб, 888x1024
888x1024
База треда.

Ангуляр для чедов.
Вью для беток.
Реакт для омежек.
Аноним 24/02/23 Птн 21:22:30 2621855 3
16769664920720.mp4 4491Кб, 1080x1920, 00:00:14
1080x1920
Аноним 24/02/23 Птн 21:38:23 2621881 4
>>2621854
Нодогосподин писяет на фронтовичков.
Аноним 24/02/23 Птн 21:55:04 2621919 5
>>2621881
Какой стек? БД, фреймворк, монолит или микросервисы, облако?
24/02/23 Птн 21:58:24 2621927 6
Вы чо ебанутые? В прошлом треде только 670 постов. Saga
Аноним 24/02/23 Птн 22:03:00 2621938 7
>>2621881
Кринжанул люто с ноды
Аноним 24/02/23 Птн 22:07:27 2621954 8
>>2621938
Идеальный инструмет для индикабачков и микро кабанчиков с микро стартупами. естественно с TC
Аноним 24/02/23 Птн 22:07:35 2621956 9
>>2621919
Всего хлебнул. Коа, нест, монга, постгрес, датастор, монолит, микросервис, бессервер, пм2, кубер, gcp, ажур, даже ебучий селениум.
Аноним 24/02/23 Птн 23:09:12 2622018 10
Как установить размер кнопки в css ?
Аноним 24/02/23 Птн 23:13:15 2622022 11
>>2622018
el.style.fontSize = `40px`
Кнопка сама подтянется.
Аноним 24/02/23 Птн 23:15:21 2622024 12
Анончики, нужен совет:
С фронта на бэк идет пост на создание. На бэке коллятся запросы в другие сервисы для взятия данных, запись в бд создается и возвращается фронту.
Проблема в том, что запрос может занять >30 мин. Моя идея пока в том, чтобы вернуть фронту хоть что-то, а потом - фронт сам на гет раз в 30 секунд получит новые данные. Но это пиздец тупо, как мне кажется.
Посмотрел, что можно использовать Pub/Sub или воспользоваться сокетами. Может есть и что-то еще. Не особо шарю, поэтому спрашиваю, может есть тру вэй для решения таких проблем.
Аноним 24/02/23 Птн 23:17:03 2622026 13
>>2622018
1. Открываешь страницу с кнопкой
2. Берешь линейку
3. Приладываешь линейку к монитору
4. Измеряешь линейкой размер кнопки
5. Размер кнопки установлен
Аноним 24/02/23 Птн 23:21:12 2622032 14
Аноним 24/02/23 Птн 23:22:48 2622035 15
у
Аноним 24/02/23 Птн 23:30:14 2622040 16
>>2622032
Спасибо за наводку. Почитал про sse, вроде то, что нужно. Опробую
Аноним 24/02/23 Птн 23:31:33 2622041 17
>>2622022
Куда это вставлять ?
Аноним 24/02/23 Птн 23:32:39 2622044 18
>>2622032
Т.е схема такая
фронт --> запрос ручки для запроса данных
фронт --> всегда слушает server set events ручку

Ручка --> Редис --> Микросервис
Микросервис --> Редис -> server set events ручка
Аноним 25/02/23 Суб 11:50:55 2622316 19
Аноним 25/02/23 Суб 16:14:29 2622546 20
Как безопасно проверить, что переменная существует (была объявлена), и не словить ReferenceError?
Аноним 25/02/23 Суб 16:18:20 2622548 21
>>2622546
Если тебе это нужно, то что-то уже пошло не так. Если тебе похуй, то оберни в трай кэтч.
Аноним 25/02/23 Суб 16:25:30 2622552 22
Что-то на learn.javascript дошел до темы "Типы данных", и сложность задач резко возросла. Раньше на одну темы уходило 2-4 часа, а теперь на одну тему может уйти и 6 часов. Я точно в верном направлении иду? Может есть еще какие-нибудь ресурсы, где про JS рассказывают человеческим языком?
Аноним 25/02/23 Суб 16:26:33 2622553 23
>>2622552
Поправлюсь: до раздела "Типы данных". А то сейчас начнётся кококо, что я дебил, забуксовавший в самом начале учебника.
Аноним 25/02/23 Суб 16:28:16 2622554 24
>>2622552
Если у тебя типы данных вызывают проблемы, то скорее всего js тебе рановато изучать и фундаментальных знаний немного. Начни с курса по языку си. Это буквально неделя и ты поймешь, что к чему и как работает. Потом будет значительно легче во всех языках
Аноним 25/02/23 Суб 16:35:44 2622557 25
>>2622552
>>2622553
Почему-то дикое желание постить под такие сообщения шебм из >>2621855
Аноним 25/02/23 Суб 16:59:29 2622581 26
>>2622553
Да мы поняли, ты у мамы не глупый. Просто ленивый.
Аноним 25/02/23 Суб 17:21:58 2622602 27
>>2622552
Да, мы тебе тут можем человеческим языком пояснить, но не будем, потому что ты тупой.
Аноним 25/02/23 Суб 17:44:56 2622636 28
Аноним 25/02/23 Суб 17:45:07 2622637 29
>>2622557
>>2622581
>>2622602
Почему-то представил, что мне это написали сеньоры и проиграл.
Аноним 25/02/23 Суб 17:47:12 2622643 30
>>2622554
Взял на заметку, но как-то слишком прохладно звучит.
Аноним 25/02/23 Суб 18:06:48 2622676 31
>>2622637
Блепт... А что если попал?
Вот этот гражданин >>2622557
Аноним 25/02/23 Суб 18:14:56 2622681 32
>>2622676
Ну попал и попал, бывает. Делать что ли тебе нехуй, анон, кроме как вкатышей оскорблять. У тебя там бабок дохуя фармится в наносекунду, сидишь в чистоте и тепле, а не ебашишь на заводе, обмазавшись соляркой и углём. Жизнь удалась, нахуя тебе вся эта мышиная возня, нахуя тебе кого-то оскроблять, нахуя тебе на ком-то самоутверждаться. Ты уже на вершине, никто с этим не сможет спорить. Тем более, что на работе своей ты уже наверняка повидал всякое - и вкатышей, которые нихуя не знают, и мидлов, которые не могут на простые вопросы ответить. Да и работа у тебя наверняка такая, что уже тупо лень кого-то еще в интернете пинать, доказывая своё превосходство.

Я просто не понимаю. Зачем вести себя как вкатившийся джун, который постоянно чувствует себя дауном-аутистом, и поэтому ему нужно кого-то на анонимной имиджборде пнуть и послать нахуй.
Аноним 25/02/23 Суб 18:50:09 2622709 33
image.png 88Кб, 994x344
994x344
>>2622681
Поясняю. Я помогу вкатуну, когда у него будет конкретный вопрос из ряда "почему так работает?", "вот код, хочу сделать Х, а получается Y, что я делаю не так?" и тд. Но когда пчелик приходит и говорит, что ему сложно на типах данных в джавасрипте - ну это сразу в хохот. И пишет, что до этого норм, было, а тут стало тяжело, давайте нормально поясняйте. А предыдущие главы какие: хеллоу волд и переменные, а он на них по 4 часа тратил. Это прям винрар.

Но надо отметить, сам звезд с неба не хватаю, скромные 4к всего.
Аноним 25/02/23 Суб 18:53:49 2622710 34
>>2619619 →
>>2619623 →
>>2619632 →
>>2619668 →
Ребята, спасибо вам большое за попытку помочь, но на тот момент я ни черта не понял из ваших объяснений. Я никак не мог понять, почему в переменную записывается функция, хотя вы утверждали, что записывается результат, а не функция. Поник головой, два дня играл в КСГО, посрался с другом, помирился с другом, сел обратно за эту задачу, и понял, что всё дело в том, что str - это примитив. Если к примитиву применять метод, то результат не будет сохраняться. Только к объектам можно применять методы, рассчитывая на сохранение результата. В данном случае для str создаётся "объект-призрак", суть которого я так пытался запомнить. В этом "объекте" применяется метод toLowerCase(). А потом результат тут же забывается, ведь str - это примитив, а не объект. Результатом должна быть строка полностью в нижнем регистре. Поэтому тут два варианта: либо применять метод к примитиву каждый раз, либо записать результат метода в отдельную переменную, и использовать уже её вместо метода.
Аноним 25/02/23 Суб 18:55:14 2622711 35
>>2622553
А, вот это пропустил и тут некорректо насчет разделов >>2622709. Тогда такой ответ: всё там нормально когда последний раз заглядывал, не выебывайся и сиди над задачами.
Аноним 25/02/23 Суб 18:59:46 2622713 36
1.jpg 32Кб, 651x191
651x191
>>2622710
Вот так выглядел мой код изначально. Как видите, я не использовал вторую переменную, которая бы сохраняла результат метода toLowerCase(), применённого к примитиву str. Отсюда и проблема.
Аноним 25/02/23 Суб 19:01:32 2622714 37
>>2622711
Ну спасибо, а то я уже собирался закрыть Visual Studio Code и идти плакать в подушку, как вчера. Продолжаю учиться тогда.
Аноним 25/02/23 Суб 19:03:53 2622716 38
>>2622681
Да, я тебя понял. Вот с этим солидарен >>2622709
По последнему треду даже если смотреть, частая картина, что даже если нужна какая-то помощь, зачастую задача идёт без вводных и с невнятной целью.
Вытаскивать клещами, что требуется, когда все тупые - не доставляет удовольствия.
Аноним 25/02/23 Суб 20:56:51 2622841 39
image.png 282Кб, 623x423
623x423
>>2622716
>Вот с этим солидарен
чаю. даже если какая-либо проблема была исследована и расписана в тексте - это может быть вовсе не решением для анона-вкатыша.
т.к. проблема была вовсе о другом а гадать на картах для выявления вопроса меня не учили.

кст, бывалые в этом треде, раньше же было пояснение в шапке, что нужно код в песочницу пихать и ссылку сюда давать? год-два назад вроде было, не?
или у меня какие-то ложные воспоминания?
Аноним 25/02/23 Суб 22:19:12 2622913 40
Есть какой-нибудь годный курс по next? Можно на ангельском
Аноним 25/02/23 Суб 22:29:14 2622924 41
>>2622913
Да. Делаешь пет - читаешь доки. Читаешь доки - делаешь пет.
Аноним 25/02/23 Суб 22:31:12 2622925 42
Аноним 25/02/23 Суб 22:35:35 2622928 43
>>2622925
Ты для души некстжс собрался изучать или чтобы кабану проекты писать? Вот и пиши.
Аноним 25/02/23 Суб 22:43:33 2622931 44
>>2622913
>>2622925
Там не настолько необъятная дока. Актуальная инфа будет в доке.
Копипастить тоже следом за видео будешь?
Ну вот смотри, какой-то видос с челом который клепает сайт на некст, аж 12 часов назад!
https://youtu.be/e1EIwuO-Dlo
Аноним 26/02/23 Вск 00:09:56 2622965 45
Есть текст с контуром, когда я помещаю другой текст на этот контур, то он проваливается под него. Как это исправить ?
Аноним 26/02/23 Вск 01:27:45 2623010 46
>>2622965
>Как это исправить ?
Научиться вопросы задавать.
Аноним 26/02/23 Вск 10:13:36 2623122 47
>>2622965
не подставлять другой текст.
Аноним 26/02/23 Вск 10:57:33 2623167 48
Аноним 26/02/23 Вск 11:03:35 2623171 49
>>2623167
Чел, я даже лодаш стараюсь не использовать а пишу велосипеды
Аноним 26/02/23 Вск 11:49:37 2623204 50
Аноним 26/02/23 Вск 12:10:26 2623223 51
image.png 111Кб, 513x923
513x923
А вот и я, пришел вас обоссывать. Спустя сутки я смог правильно объяснить ИИ что мне нужно, и она мне написала нужный код и сэкономила мне 6000 рублей который вы у меня тут вымогали. Хотя я готов был заплатить 1к за эту легкую работу на которую ушло бы у вас 10 минут.
Ой, это что, получается програмизды не нужны? Ведь я сделал для себя скрипт с нулевыми знаниями JS. Как же так?
Тьфу на вас блять. Не зайду сюда больше никогда
Аноним 26/02/23 Вск 12:14:49 2623226 52
>>2623204
Ты ему собрался перезванивать из-за одной функции, для которой надо тащить лодаш?
Аноним 26/02/23 Вск 12:20:50 2623229 53
Я хуй знает зачем этот тред еще здесь висит.
Вебмакакинг ВСЁ
ChatGPT уебал всех вкатунов и уебет скоро всех мидлов. Советую осваивать курсы сантехника
Аноним 26/02/23 Вск 12:23:51 2623231 54
>>2622552
Зачем тебе это, чел? ИИ заменил всех джунов, конец сказки.
Аноним 26/02/23 Вск 12:26:11 2623235 55
>>2623223
> бесплатна
> 200 рублей
> даже 2к
> нет всё-таки 200р
> съэкономил 6к
> внезапно 1к
+15р за двое трое? суток?

Рад за тебя, теперь осталось вкатиться обратно на толоку.
Аноним 26/02/23 Вск 12:31:26 2623237 56
Так и не понял, какой фримверк для фронта лучший? Вот я разработчик заднего конца, хочу чисто для себя выучить жиес чтобы там интерфейсики всякие прикольные клепать (особенно электрон нраицца). Что же взять - РЕАКТИВНЫЙ, УГЛОВАТЫЙ, ВИДОК или СВЕТЛЕНЬКИЙ?
Аноним 26/02/23 Вск 12:31:32 2623238 57
>>2623229
Почему ты здесь а не в /san?
Аноним 26/02/23 Вск 12:31:52 2623239 58
>>2623223
Ух, знатная копипаста.
Аноним 26/02/23 Вск 12:33:50 2623243 59
>>2623237
Жиквери очевидный.
Аноним 26/02/23 Вск 12:44:27 2623252 60
>>2623239
Не, он приходил 23-го https://2ch.hk/pr/res/2609772.html#2621062

Опять абстрактная задача, с чем логично был отфутболен. Сходил в /b, нихуя не получилось.
3 дня объяснял ИИ чего он хочет.
Прямо как этот с его контурами >>2622965
Что он там подразумевает под контурами и что делает - да кто его знает лол.
Аноним 26/02/23 Вск 15:12:35 2623426 61
16218787908350.mp4 618Кб, 320x240, 00:00:14
320x240
>>2623223
Проорал Анончик. Как же ты тут всех попустил.
Аноним 26/02/23 Вск 16:09:33 2623502 62
>>2623223
трахнул получается, теперь тебе открыта дорога в сеньоры
Аноним 26/02/23 Вск 16:10:03 2623504 63
>>2623223
Ну я же первым постом тебе тогда указал на проблему >>2621098 →. А потом ты попыхтел пару деньков - и чатЖПТ сделал, что тебе нужно. Так что не ленись в следующий раз просто.
Аноним 26/02/23 Вск 16:35:30 2623559 64
>>2623237
Попроси у ChatGPT "напиши лучший фреймворк для фронта".
Аноним 26/02/23 Вск 16:38:29 2623567 65
>>2623237
Blazor если ты пишешь бэк на самом современном языке в мире - C#
Аноним 26/02/23 Вск 16:46:30 2623584 66
>>2623237
реакт без вариантов, он просто популярнее и инфы по нему больше. К тому же он проще всех, остальные используют для довольно специфических задач
Аноним 26/02/23 Вск 16:48:19 2623589 67
>>2623223
костыль.костыль(костыль).
Аноним 26/02/23 Вск 19:55:45 2623908 68
>>2621954
Почему кстати нода до сих пор не стала универсальным инструментом на бэке? Буквально лучше решеток и джавы почти во всем, не говоря уже о всяких питухонах.
Аноним 26/02/23 Вск 21:02:14 2624027 69
Привет. Часто ли на практике вы используете рекурсивные функции? В каких случаях они бывают вам полезны?
Аноним 26/02/23 Вск 21:04:00 2624032 70
image.png 28Кб, 1044x120
1044x120
theme.webm 295Кб, 1357x511, 00:00:06
1357x511
Аноним 26/02/23 Вск 21:26:38 2624055 71
>>2623999
Говори конкретнее, что в жабе или решетках есть такого, чего нельзя реализовать на жс/тс?
Аноним 26/02/23 Вск 21:32:03 2624068 72
image 84Кб, 561x873
561x873
image 92Кб, 901x884
901x884
Небольшой архитектурный вопрос. В этом случае стоит использовать интерфейсы или классы? Всё эти данные парсятся из JSON с внешнего сервера и вручную не создаются.
Аноним 26/02/23 Вск 21:39:14 2624077 73
>>2624068
Если нужна валидация или проверка типов в рантайме, то классы.
Аноним 26/02/23 Вск 21:39:56 2624078 74
>>2624032
Принципе, можно стоя в гамаке трахаться.
Аноним 26/02/23 Вск 21:40:54 2624080 75
>>2623237
первый пост в этом треде тебе в помощь.

ну а если ты задний писал через классы то угловатый самый раз.
Аноним 26/02/23 Вск 21:41:01 2624081 76
>>2624032
А теперь реализуй выгрузку файлов чанками, динамическую форму без перезагрузки страницы с переменным количеством инпутов в зависимости от ввода, анимацию открытия закрытия меню древовидной структуры и чтобы количество уровней дочерних элементов было неизвестно заранее, перетаскивание элеметов этого меню, плавный ресайз отдельных областей страницы, контекстное меню на странице, события на странице при скролинге например изменение лайаута элементов и тд и тп
Аноним 26/02/23 Вск 21:43:25 2624085 77
Аноним 26/02/23 Вск 21:50:04 2624095 78
>>2624085
Сначала устройся на работу разработчиком браузеов, чтобы это все на css стало возможным. А на жс я и сам могу, незачем платить.
Аноним 26/02/23 Вск 21:53:08 2624097 79
>>2624081
Это троллинг? В чем смысл того, что ты перечислил? Такие задачи встречаются? Есть где реализовано похожее?
Аноним 26/02/23 Вск 21:57:10 2624103 80
>>2624097
Что там необычного увидел? CRM никогда не писал или другой софт для внутренних задач бизнеса? Ну разве что про скроинг это скорее из свистоперделок для публичных сайтов.
Аноним 26/02/23 Вск 22:06:10 2624108 81
Чому в браузерах нет TCO? В стандарте же есть, неужели такая сложная фича?
Аноним 26/02/23 Вск 22:23:28 2624119 82
Подскажите пожалуйста, как убрать отступ в css + html между несколькими тегами <p>текст</p> с текстом ? Хочу что бы они были рядом.
Аноним 26/02/23 Вск 22:26:18 2624121 83
Аноним 26/02/23 Вск 22:29:27 2624122 84
>>2624108
В стандарте - нет. Читал бы ее - знал.

TCO была принята в стандарт ES6 и не имплементирована никем, кроме javascriptcore.
В вебе заведено что от ЛЮБОГО стандарта для его принятия требуется две независимые имплементации среди активно используемых платформ.

Так как TCO не было имплементировано никем более, его выпилили их спеки с ES7.
Аноним 26/02/23 Вск 22:47:33 2624133 85
Аноним 26/02/23 Вск 22:48:00 2624134 86
Аноним 26/02/23 Вск 23:20:09 2624151 87
image 3Кб, 200x200
200x200
Как выучить CSS? Чтобы не так что сидишь и по 30 минут гуглишь почему грид на пол страницы съехал а вот именно взять и ПОНЯТЬ, чтобы вот в голове все выстроилось в цельную и гармоничную картину от а до я как и куда что считается и на что влияет, чтобы ЧУВСТВОВАТЬ макет, быть с ним ЕДИНЫМ ЦЕЛЫМ. Есть ли способ получше классического решения проблем по мере поступления?
Аноним 26/02/23 Вск 23:36:41 2624163 88
>>2624032
А сохранение выбранной темы?
Аноним 26/02/23 Вск 23:43:12 2624168 89
16752798063630.mp4 1157Кб, 720x576, 00:00:04
720x576
Аноним 26/02/23 Вск 23:54:19 2624182 90
Аноним 27/02/23 Пнд 00:07:16 2624189 91
Аноним 27/02/23 Пнд 00:34:44 2624194 92
>>2624151
Ты та сама глыба из мвп треда? Ору
Аноним 27/02/23 Пнд 00:54:19 2624199 93
>>2624151
Почему вы не читаете спецификаций?
Аноним 27/02/23 Пнд 00:54:27 2624200 94
Аноним 27/02/23 Пнд 01:31:52 2624209 95
>>2624151
>чтобы вот в голове все выстроилось в цельную и гармоничную картину
CSS не является цельным и гармоничным, так что он не выстроится. Просто берешь - и отдельно кусочками учишь, как работает грид и что на что в нем влияет, как работает флексбокс и что на что в нем влияет, как работает блочная модель и что на что в ней влияет.
Аноним 27/02/23 Пнд 01:55:13 2624215 96
>>2624055
Ты серьезно сейчас? У нас бэк на шарпах - и он по сравнению с js примерно как Нед Старк по сравнению с Вонючкой. Тут даже не знаешь с чего начать - начиная от возможности писать аллокейшен фри код, по скорости не уступающий нативному и заканчивая линкью, позволяющему за 2 строчки сделать то, что на js займет 50 и потребует трехуровневых вложенных циклов с 10-ю временными переменными, и возможностью в целом писать методы расширения, тем самым полностью получая контроль над внешним видом кода, выводя его переиспользование на новый уровень в плане интуитивности и понятности. И это я еще про инструментарий для дебага не начинал, от которого на js плакать хочется, и встроенной документации, позволяющей за счет строгой типизации и своего качества прямо из IDE понимать, какой функционал и каким образом использовать без необходимости лезть на сайт c документацией за подробностями.
Аноним 27/02/23 Пнд 01:56:21 2624216 97
>>2624209
Ну есть же какая-то концепция вообще у css. Например разделение элементов на строчные и блочные. У большинства строчных нет размеров, строчные не переносят следующий элемент потока на новую строку, на строчные влияет line-heigh
Или например концепция весов у селекторов Лидирует тот стиль который находится в селекторе с наибольшим весом. Если веса селекторов одинаковые то лидирует стиль в последнем селекторе.

мимо
Аноним 27/02/23 Пнд 02:04:30 2624220 98
>>2624215
Есть rxjs он по выразительности не хуже твоего линкью. Все таки нода это лучший инструмент для индикабанчиков. Твой дотнет все же на корпоративный сектор рассчитан и на коллективную разработку с переусложненным пайплайном, тулчейном, окружением
Аноним 27/02/23 Пнд 03:09:53 2624235 99
>>2624215
То есть в js по твоему нет ленивых цепочек итераторв и трансдьсеров, что ты привел ликью как ману небесную.

Или в прототипно ориентированном программировании нельзя писать методы расширения?

ты вообще js знаешь?
Аноним 27/02/23 Пнд 08:31:30 2624276 100
Как сделать чтобы определенная вкладка в браузере не ререндерилась после изменения кода в идешке? А то хочу сравнить стили, а она обновляется
Аноним 27/02/23 Пнд 08:37:42 2624280 101
>>2624276
Отключи хотрелоад.
Аноним 27/02/23 Пнд 08:56:15 2624289 102
Аноним 27/02/23 Пнд 08:56:53 2624290 103
Аноним 27/02/23 Пнд 09:03:40 2624293 104
>>2624289
> апрель 2016
И че они до сих пор вола ебут?
> коллстак
Коллстак из
> функциянеим
> функциянеим
> функциянеим
> функциянеим
> функциянеим
Мне конечно охуеть поможет, как мне без него жить то?
Аноним 27/02/23 Пнд 09:06:55 2624295 105
Аноним 27/02/23 Пнд 09:59:32 2624324 106
Анон, помоги вкатышу. У меня есть такая строка "$123.321" как мне с помощью slice() положить в две разные переменные то, что находится до точки и то, что находится после точки?
Аноним 27/02/23 Пнд 10:02:15 2624325 107
Аноним 27/02/23 Пнд 10:07:28 2624328 108
image.png 7Кб, 415x127
415x127
Аноним 27/02/23 Пнд 10:08:39 2624329 109
Аноним 27/02/23 Пнд 10:19:20 2624335 110
>>2624332
Версии ес бампаются ровно раз в год.
То что было уже три-пять лет назад сложно называть последними версиями.
Аноним 27/02/23 Пнд 10:26:34 2624347 111
>>2624027
Нет. Когда нужно обойти вложенные структуры.
Аноним 27/02/23 Пнд 13:19:17 2624455 112
>>2621881
Расскажи как вкатился на бэк. Сразу на ноду или сперва был на другом языке?
Аноним 27/02/23 Пнд 13:37:29 2624483 113
>>2624455
Через фулстек, потом надоело красить кнопки и пошёл на проэкты только с бэком, к счастью на галере с этим норм.
Аноним 27/02/23 Пнд 15:19:43 2624591 114
>>2624483
Пиздец, тоже хочу. На фронтенде работаю чуть больше года, пиздец тупиковая хуета.
Аноним 27/02/23 Пнд 16:50:40 2624712 115
>>2624220
>Есть rxjs он по выразительности не хуже твоего линкью
Намного хуже. Просто посмотри и сравни.
>Все таки нода это лучший инструмент для индикабанчиков.
Только тем, что можно запрячь фронтенд-макак писать бэк. На этом преимущества заканчиваются.

>с переусложненным пайплайном
Там пайплайн разработки, внезапно, проще.


>>2624235
>То есть в js по твоему нет ленивых цепочек итераторв и трансдьсеров
Просто сравни, как они пишутся. С линкью и рядом не стоит.
>Или в прототипно ориентированном программировании нельзя писать методы расширения?
В js - нельзя.
Аноним 27/02/23 Пнд 17:07:45 2624741 116
Аноним 27/02/23 Пнд 19:28:59 2624892 117
>>2622024
>Но это пиздец тупо, как мне кажется.
Эээ, почему? Самый простой и самый надежный способ, если на latency похер, а в твоей случае как раз похер.
Аноним 27/02/23 Пнд 23:24:05 2625110 118
Как поместить результат работы each(html) в один контур ?
У меня получается, что каждое слово в новом контуре, а мне нужно что-бы один был контур для всех слов.
Аноним 27/02/23 Пнд 23:28:43 2625114 119
>>2625110
Получилось, нужно было поверх each <div> положить, угу.
Аноним 27/02/23 Пнд 23:38:22 2625122 120
>>2625110
Контурошизик, вопросы формулируй нормально, ну или пили песочницы, ну чего ты в самом деле.

если ты другой анон, сорян, но про формулирование и песочницу, и к тебе относится тогда.
Аноним 28/02/23 Втр 00:12:58 2625177 121
>>2625122
Вот тебе не жалко пацана? Когда он поток сознания начнет на кабаныча изливать, кабаныч станет потом от него во все стороны шарахаться что б не загрузил шизой.
Аноним 28/02/23 Втр 09:26:02 2625379 122
Есть селект, при нажатии появляется дропдаун и там кнопка которая открывает модалку. При нажатии на селект какого-то хуя срабатывает onclick кнопки, хотя ее в в момент нажатия даже в документе нет. Есть идеи почему так может быть?
Аноним 28/02/23 Втр 09:48:47 2625394 123
>>2625379
Смотри где у тебя висят обработчики.
Возможно, ты не туда присобачил обработчик. Ты можешь посмотреть в событии с какого элемента был запущен обработчик.
Возможно, обработчик висит где-то выше и срабатывает при всплытии события. Для этого нужно вызвать event.stopPropagation чтобы не было всплытия.
Аноним 28/02/23 Втр 09:56:05 2625400 124
>>2625177
Скорее пма жалко.
Вряд ли контурошизичный словарь пилить кто-то будет, посадят его на какой-нибудь зашкварный проект и будет себе там контуры в кулачок пилить.
Аноним 28/02/23 Втр 09:56:22 2625401 125
>>2625394
Ах да забыл, проверь что ты не дёргает флаги/мочалку из обработчика в селекте
Аноним 28/02/23 Втр 10:26:33 2625424 126
image.png 48Кб, 670x524
670x524
Помогите нубику, знак $ для чего здесь и где почитать про это? гугл не то ищет
Аноним 28/02/23 Втр 10:27:57 2625426 127
>>2625424
Видишь знак $ - это 90% jQuery.
Аноним 28/02/23 Втр 10:36:34 2625429 128
Аноним 28/02/23 Втр 10:39:42 2625431 129
Аноним 28/02/23 Втр 14:32:43 2625766 130
>>2625424
Ты обучаешься про курсам 10-летней давности, или залез на легаси проект?
Аноним 28/02/23 Втр 16:16:13 2625864 131
Снимок.JPG 48Кб, 598x760
598x760
Некстодебилы, для вас нормально делать два запроса на ровном месте, вместо одного? Как этого избежать? При условии, что я не знаю количества постов, для массива path.
Аноним 28/02/23 Втр 16:49:40 2625914 132
Аноним 28/02/23 Втр 17:08:30 2625933 133
>>2625914
Принимается, а если не статический рендер, а динамический?
Аноним 28/02/23 Втр 18:01:52 2626007 134
>>2625963
Да как ты заебал
Аноним 28/02/23 Втр 18:07:08 2626015 135
В общем есть такая проблема:
У меня есть страница куда при загрузке useEffect'ом выгружается с сервака первый объект в стейт и отображается. В этом объекте содержиться текст и кнопка. При нажатии на кнопку должно инкрементировать let который указывается в ссылке на сервак и должен выполняться запрос на сервак за новой порцией текста и новой кнопкой которые должны быть сразу видны на странице под предыдущим контентом.

Как это сделать по грамотному? Пж помогите ребятки.
Аноним 28/02/23 Втр 18:20:58 2626035 136
Example.PNG 27Кб, 504x527
504x527
Console.PNG 1Кб, 345x45
345x45
Объясните человеческим языком разницу в пикриле.

И есть ли человеческий способ итерироваться по геттерам в тайпскрипте?
Аноним 28/02/23 Втр 18:39:37 2626057 137
>>2625933
А ты хочешь статику пре-билдить, или тебе каждый раз нужно актуальные данные тянуть с SSR?
Динамика - getServerSideProps, будет вызываться на каждый запрос.
getStaticPaths с getServerSideProps работать не будет, некст после него лёроаёт getStaticProps.
Если тебе нужно периодически пересобирать статику - ISR:
https://nextjs.org/docs/basic-features/data-fetching/incremental-static-regeneration
Аноним 28/02/23 Втр 19:11:18 2626106 138
>>2626057
Та я пока пытаюсь понять, как Некст работает, что бы эффективно его использовать. Если у меня есть, например, страница юзера, она же должна быть династической, верно? Нельзя же при билде срендерить сразу все страницы всех юзеров? Мне кажется, что нет. Отсюда вопрос.
Есть возможность иметь на одной странице два компонента, один со статической инфой (например статья какая-то) и второй с динамической (хедер с данными пользователя)? Просто в двух словах. Доку я потихоньку читаю.
Аноним 28/02/23 Втр 19:12:36 2626110 139
>>2626035
> TS
JS...

Можно покостылить и сделать геттеры на прототипе итерируемыми.

Object.defineProperty(Example.prototype, 'b', { enumerable: true })

for (const key in instance)...

for key in перебирает поля прототипа если они помечены enumerable

>>2626015
Что значит приходит кнопка? Очень интересно, но ещё меньше понятно.
Аноним 28/02/23 Втр 19:22:41 2626128 140
>>2626110
Оба варианта работают, но, как ты и говоришь, выглядит убер костыльно. Не понимаю, почему так решили разработчики, не моего ума дело :3 Спасибо
Аноним 28/02/23 Втр 19:50:41 2626158 141
image.png 3Кб, 240x30
240x30
Анон, зачем вот это пишут в функциях? Что это означает?
Аноним 28/02/23 Втр 19:53:12 2626161 142
>>2626106
Относительно недавно (в 13 версии) добавили layout'ы. Лейауты не ререндерятся, в них можно заворачивать компоненты/страницы на роутах.
https://nextjs.org/docs/basic-features/layouts
Аноним 28/02/23 Втр 19:54:28 2626163 143
>>2626158
Обычно так обозначают аргумент, который не используется в функции.
Аноним 28/02/23 Втр 19:55:06 2626164 144
Аноним 28/02/23 Втр 19:56:46 2626166 145
>>2626163
просто нагуглил такое
JavaScript doesn't do parameter-count checking

Тогда не понимаю, зачем такая запись?
Аноним 28/02/23 Втр 19:57:02 2626167 146
>>2626158
Тут обычно 2 варианта:
1) ни нужно, но нужно принять параметр, чтобы использовать другие параметры в функции
2) переложат _ как есть без модификаций

Изредка, может быть договорённость в условных мапах и иже с ними на массивах использовать _ для униформности
Аноним 28/02/23 Втр 19:59:53 2626170 147
>>2626110
Ну имеется ввиду не кнопка приходит, текст для спана который внутри кнопки.
Аноним 28/02/23 Втр 20:01:53 2626176 148
>>2626164
Например метод массива map передает в функцию три аргумента currentValue, Index и array, если тебе нужно только значение, то просто пишешь функцию вида (v)=>{} и успешно проебываешь два остальных аргумента. А вот если тебе нужен первый и третий аргумент, то придется второй тоже принять, вот чтобы его пометить как ненужный его обычно обзывают _, пишут функцию вида (v, _, a) => {}.
Аноним 28/02/23 Втр 20:13:05 2626196 149
Аноним 28/02/23 Втр 20:15:21 2626197 150
>>2626170
Я всё ещё не могу распарсить что тут написано >>2626015 но по-моему ты только что TodoApp.
Аноним 28/02/23 Втр 20:20:16 2626202 151
>>2626110
Кароч примерно такая схема

const Text = () => {
const [data, setData] = useState([{
text: "",
textForButton: ""
textVisibleAfterClickButton: ""
}]);

let i = 0;

useEffect(
//здесь первый запрос на сервер при заходе на страницу и что важно ссылка такая `.../api?id=${i}`
i = i + 1;
)

return (
<p>data.text</p>
<button><span>data.textForButton</span></button>
<p>data.textVisibleAfterClickBurton</p>
);
}

и вот мне надо чтобы после клика на кнопку производился новый запрос на сервер, но как уже понятно по параму = 1.
С него приходит новый жсон который также идёт в дату.

А на странице это должно быть примерно так:

зашёл на страницу первый раз и увидел:
- текст 1
- кнопка 1
- текст который появляется после нажатия кнопки (пока невидим) 1

нажал на кнопку на странице:
- текст 1
- кнопка 1
- текст который появляется после нажатия кнопки (уже видим так как нажал) 1
- текст 2
- кнопка 2
- текст который появляется после нажатия кнопки (пока невидим) 2
Аноним 28/02/23 Втр 20:30:44 2626219 152
>>2626202
Если тебе нужно значение счётчика держать между рендерами, используй для этого useState.
Твой let i на каждый рендер заново инициализируется в ноль.

const [id, setId]= useState(0);

useEffect(() => {
request(`api/${id}`)
// setData
}, [id])
С зависимости, чтобы запрос дёргался на изменение id.

В обработчике на кнопку делаешь setId(id => id + 1)

Состояние обновилось, на следующем рендере имеем id = 1. id поменялся => запустился useEffect с запросом
Аноним 28/02/23 Втр 20:37:31 2626221 153
Бля анонсы, в офисе на новой работе просят дресс код, какие брюки или что купить чтоб не умирать сидеть 8 часов, а то в джинсах пизда некомфортно
Аноним 28/02/23 Втр 20:45:23 2626224 154
>>2621834 (OP)
че то я запутался в реакте
я могу писать классовые компоненты в 2к23
какие либы юзать для роутинга/стора
Аноним 28/02/23 Втр 21:06:24 2626234 155
Аноним 28/02/23 Втр 22:01:51 2626284 156
>>2626219
Спасибо

Сорри, если тупой вопрос, но все же... Так а при перерендере старый текст и тот который появляется после нажатия на кнопку не будет пропадать?
Аноним 28/02/23 Втр 22:14:37 2626294 157
>>2626284
Я вижу у тебя в data массив с объектами.
data - состояние компонента в данном случае, которое "переносится" между рендерами.
После изменения id ты просто можешь добавлять новый объект в массив.
Сорта:
useEffect( async () => {
const response = await fetch(`api/${id}`)
const newEntity = await response.json() // новый объект с бэка

setData(state => [...state, newEntity]) // новый объект в конец массива
}, [id])

Дальше просто по своей дате в return проходишься через map и отрисовываешь как надо

Но вообще да, ты делаешь суть TodoApp
Аноним 28/02/23 Втр 22:57:30 2626321 158
Мужики подскажите пожалуйста.
Блог на нексте, хочу сделать страничку с выводом всех статей, но чтобы подгружались постранично. Начал проект с App папкой и подходом client\server компоненты, но я так понял что никак из клиент компоненты не передать значения в серверную?
Или это всё хуйня и надо через __апп делать?
Аноним 28/02/23 Втр 23:00:23 2626326 159
>>2626321
Я так понимаю что просто на реакте и с нормальным бэком, я бы бед не знал и state на каждую залупу бы уже навешал,но с некстом чет не догоняю как взаимодействие клиент компоненты и серверной установить
Аноним 28/02/23 Втр 23:04:40 2626331 160
>>2624483
Что по ГОшке думаешь? Хочу в фуллстека перекатиться и далее постепенно на бэк. Или для фронта онли нода без других вариантов?
Аноним 28/02/23 Втр 23:37:51 2626351 161
Вопрос по гиту, есть какой-то вариант между аккаунтами переключаться? Gitlab или gitlens в vscode даст такую возможность? Или мне блять придется каждый раз удалять аккаунт в диспетчере учетных данных и заново входить в нужный аккаунт?
Аноним 28/02/23 Втр 23:40:02 2626353 162
>>2626321
А,разобрался всё таки,нужно было всего лишь в клиент компаненту пропсом передать серверную
Аноним 28/02/23 Втр 23:48:09 2626361 163
>>2623223
forEach...forEach...forEach...if...if...if...if
Земля стеклобетоном тому, кто потом этот кал говна вилкой рефакторить будет или дорабатывать функционал придется.
Мало того, не забывай, ты на иъёбства с чатгпт и свое время потратил
Аноним 28/02/23 Втр 23:51:57 2626365 164
>>2626351
Нашел вариант через ssh ключи аккаунты менять, попробую, но если анон знает - мониторю реквесты
Аноним 01/03/23 Срд 00:09:51 2626376 165
>>2626221
>офис
>дресс-код
Сочувствую
Аноним 01/03/23 Срд 00:16:34 2626381 166
image.png 60Кб, 307x164
307x164
Screenshot 2023[...].png 95Кб, 1390x576
1390x576
Написал такую кнопку. Она имеет свои стили, раньше я при наличии customClass добавлял еще 1 класс рядом с основным, но тогда нужно все писать через !important, пришлось переписать таким вот грубоватым способом как на пике, из минусов дохуя лишнего CSS кода на кнопках где требуются правки в стилях.
Как выйти из ситуации? Почему класс модификатор ниробит без !important?
да, я тупой
Аноним 01/03/23 Срд 00:24:54 2626386 167
>>2626381
Сделай основной класс дефолтным и его стили перезаписывай другими классами. В чём проблема? Я бы посоветовал передавать классы массивом и .join(' ') или пустой массив, если нет классов, но за такое тут обоссут. Алсо, есть библа с гибким применением.
https://www.npmjs.com/package/classnames
Аноним 01/03/23 Срд 00:26:59 2626389 168
Я не смогу в чилдрен пропсу пропихнуть?
Аноним 01/03/23 Срд 00:32:59 2626391 169
Screenshot 2023[...].png 111Кб, 1388x604
1388x604
>>2626386
>передавать классы массивом и .join(' ')
Спасибо анончик, работает.
Аноним 01/03/23 Срд 00:38:59 2626392 170
>>2626389
>Я не смогу в чилдрен пропсу пропихнуть?
Возможно пришло время учить редакс.
Аноним 01/03/23 Срд 00:45:00 2626396 171
>>2626392

А можно в двух словах практическую его полезность? Перед тем как я погружусь в его документацию
Аноним 01/03/23 Срд 00:51:48 2626398 172
>>2626391
>Спасибо анончик, работает.
Ёбанный быдлокод, ааааа! У меня кровь из глаз течёт, расстрелять бы или дать пизды за такую писанину!
Аноним 01/03/23 Срд 01:10:48 2626405 173
>>2626398
Похуй, все равно не работает. В одном компоненте работает, а в другом только если !important добавить.
Аноним 01/03/23 Срд 01:12:44 2626406 174
>>2626398
Пиздец, конечно, но такой код в 99% проектов, где шаблоны или рендер функции содержат выражения и даже операторы

А еще бывает сам устаешь и пишешь километровые компоненты...

мимо шел
Аноним 01/03/23 Срд 02:23:31 2626418 175
>>2623223
Толсто. Тебе бы тут такую простыню рублей за 50 накатали, а за 100 - выстроилась бы очередь из желающих. О какой такой тысяче, и тем более шести, ты говоришь?
Аноним 01/03/23 Срд 02:55:05 2626427 176
>>2623223
>Тьфу на вас блять. Не зайду сюда больше никогда
Хорошо. Скатертью по жопе!
Аноним 01/03/23 Срд 08:44:43 2626476 177
Почему
"Lala" == true возвращает false? Разве он не должен строку к boolean привести и т.к она не пустая сделать её true?
Аноним 01/03/23 Срд 08:44:57 2626477 178
>>2626331
Для фронта вообще никаких альтернатив, интерпретаторы из других языков в жс или васм - игрушки без вакух. Вместо ГОвнеца уж лучше ржавого навернуть, там хоть можно модули к ноде писать.
Аноним 01/03/23 Срд 08:46:14 2626478 179
>>2626221
Что неужели никто в офисе не работает?
Аноним 01/03/23 Срд 09:06:59 2626485 180
image.png 188Кб, 398x501
398x501
image.png 61Кб, 201x251
201x251
>>2626221
Смотря какой дресс код. Может вы как люди в черном должны одеваться.

Я в клетчатых брюков и кофточке простой гонял.
Аноним 01/03/23 Срд 09:11:38 2626488 181
Аноним 01/03/23 Срд 10:22:26 2626526 182
>>2626476
Нет, не должен.
Если типы аргументов разные, они приводят к числу и потом сравниваются.
Аноним 01/03/23 Срд 11:17:20 2626548 183
Когда открываю селект у дропдауна неправильно вычисляется getBoundingClientRect().height высота при первом открытии, когда второй раз открываешь все нормально, что за хуйня? Получилось пофиксить только добавлением . getBoundingClientRectRect в депсы useEffect, но как-то говном пахнет это
Аноним 01/03/23 Срд 11:51:27 2626563 184
>>2626224
> я могу писать классовые компоненты в 2к23
Можешь, но лучше не писать.
> роутинга
Реакт-роутер
> стора
Сильно зависит от размеров аппки. Часто можно обойтись хуками и контекстом.
Аноним 01/03/23 Срд 12:22:42 2626580 185
>>2626476
>>2626526
Ебать я ахуел. Я всегда думал, что приведение типов if'ом работает так же как и нестрогое сравнение.

const str = 'HUI';
str == true
false
if (str){
console.log('PIZDA');
}

.. PIZDA
Аноним 01/03/23 Срд 12:39:02 2626591 186
>>2626580
Надо было вначале делать конвертацию в bool

!!"test" === true

Тогда сработало бы.
Аноним 01/03/23 Срд 12:43:38 2626593 187
Собираюсь писать пет-проект, где будет список элементов, обновляющийся по сокету, график, не большой чатик и, возможно, еще запилю возможность ресайзить блоки (типа такого https://react-resizable-panels.vercel.app/examples/horizontal). Ну и общий стор нужен. Всё это на одной странице. Для CSR идеальный вариант, но мне нужно закрепить знания по Нексту. Нормально ли такое пилить на Нексте? Какие подводные?
Аноним 01/03/23 Срд 12:44:22 2626594 188
Аноним 01/03/23 Срд 12:46:21 2626595 189
Аноним 01/03/23 Срд 13:01:41 2626601 190
>>2626580
>Я всегда думал
На основании чего? В документации написано равно противоположное.
Аноним 01/03/23 Срд 13:09:45 2626606 191
>>2626601
По поведению. Плюс, я никогда не пользовался нестрогим неравенством, поэтому не знал про такие приколы и думал что нестрогое приводит к типу и просто if также приводит к типу.
Аноним 01/03/23 Срд 14:08:53 2626651 192
>>2626606
Документацию-то почему не читаешь?
Аноним 01/03/23 Срд 15:26:57 2626703 193
Какие курсы по фронтедну лучше спиратить? да, я тупой, мне нужно чтобы болванчик на экране мне все рассказывал
Аноним 01/03/23 Срд 15:35:47 2626711 194
Понадобилось на проекте сделать что-то типо всплывающего меню и в других местах это просто вкорячено обычным дивом с маржином, мне не особо понравилось.
Порталы в react вообще используют на реальных проектах?
Аноним 01/03/23 Срд 15:54:34 2626725 195
>>2626711
Да, например прокинуть ту самую модалку выше в HTMLDOM
Аноним 01/03/23 Срд 15:55:05 2626727 196
>>2626711
>Порталы в react вообще используют на реальных проектах?
конечно, но учитывай что меню может выходить за рамки экрана, поэтому используй floating-ui или react-popper
Аноним 01/03/23 Срд 16:48:33 2626772 197
Встал хуй вопрос. Разбираюсь в нексте. Нашёл глупое тестовое, просто отрисовать компоненты. Прилетает с апихи объект с пропсами, там ссылка на картинку карточки. Эту картинку я отрисовываю компонентом Image from 'next/image'. Картинки разных размеров, я заведомо не знаю каких (да, да, хуета. в нормальном проекте картинки все в папке, с размерамм и т.д). Компоненту Image надо прокидывать размеры для того, что бы он резервировал место под картинку в разметке. Вот что я придумал

Логику вычисления ещё подкорректирую. Пока, просто два столбика карточек и ширина картинки примерно равна ширине карточки
width={winSize < CSS_SIZES.WINDOW_MAX_SIZE_MIN_MEDIA_VALUE ? winSize / 2 : CSS_SIZES.QUEST_CARD_IMAGE_WIDTH}

А в самом компоненте вот такую залупу.

const [winSize, setWinSize] = useState(CSS_SIZES.WINDOW_MAX_SIZE_MIN_MEDIA_POINT_VALUE );

// CSS_SIZES.WINDOW_MAX_SIZE_MIN_MEDIA_POINT_VALUE, сделал переменную, что бы вынести в отдельный хук. в компоненте был window.innerWidth, который можно только в компоненте использовать из-за SSR

const resize = () => {
setWinSize(window.innerWidth);
};

useEffect(() => {
window.addEventListener('resize', resize);

return () => {
window.removeEventListener('resize', resize);
};
}, []);

Как идея? Разбираюсь в ньюансах некста и наткнулся на такую минипроблему с компонентом Image в контексте задачи. Да, хуёво, что на каждую картинку навешивается лиснер, но так под любой размер экрана подгонится ширина.
Аноним 01/03/23 Срд 18:07:22 2626835 198
Снимок.JPG 53Кб, 806x523
806x523
Тупо лол. Не знаю, сколько бы я искал такую возможность использования шаблонных строк в доке, но в любом случае, дольше, чем спросить у нейронки. Алсо, я даже не подозревал о такой гибкости тса. Всегда думал, "вот держите нахуй, строки, числа интерфейсы и т.д, если будете мешать всё вместе, то ошибка". Справедливости ради скажу, я и не пробовал экспериментировать.
Ахуенное это ваше чат жпт, быстрый вопрос, быстрый ответ, чего мне не хватало всегда. Код-то хуй с ним, чаще вопросы, "есть ли возможность?", "а как оно работает?" и т.д.
Аноним 01/03/23 Срд 18:46:09 2626868 199
>>2626835
Нормальные люди умеют в документацию.
Кстате, этот твой чятжпт обосрался и не сказал про перемножение юнионов.
type Units = 'px' | 'em' |'rem';
type MyType = `${number}${Units}`
Аноним 01/03/23 Срд 19:15:39 2626894 200
в реакте юзать portal для дропдауна у селекта это норма? Просто как-то по уебански звучит вычислять позицию селекта и потом top от верха отсчитывать, особенно непонятно как делать когда этот селект внутри модалки
Аноним 01/03/23 Срд 19:17:41 2626895 201
>>2626894
Норма. Только портал сам тебе ничего не посчитает, считать все равно надо. Для этого можно использовать popper-js.
Аноним 01/03/23 Срд 19:33:04 2626930 202
Можно ли как-то сий код переписать используя декларацию функции вместо const handleSubmit....

const handleSubmit = useMemo(() => {
return (orderDetails) => {
post('/product/' + product.id + '/buy', {
orderDetails
});
};
}, []);
Ну как-то типа: function handleSubmit = useMemo(......

Никак не могу привыкнуть к этой фигне, когда функцию в переменную засовывают
Аноним 01/03/23 Срд 19:38:17 2626937 203
>>2626895
Да, я понимаю что считать надо, но ведь если допустим в документе, то от window, а если в модалке, то от низа модалки, а если скролл модалки, то это на каждый скролл пересчитывать. Не совсем понимаю вот.

>Для этого можно использовать popper-js.
Спасибо, почитаю!
Аноним 01/03/23 Срд 20:27:41 2626989 204
>>2626930
Это называется функция первого класса.
https://developer.mozilla.org/en-US/docs/Glossary/First-class_Function

А как ты хочешь это переписать через функциональное объявление? Кек.
Ну и как бы, как ещё ты будешь хранить ссылку на функцию для мемоизации?
Аноним 01/03/23 Срд 21:05:24 2627023 205
>>2626930
(function handleSubmit { return useMemo(...)})()
Аноним 01/03/23 Срд 21:14:27 2627029 206
>>2626989
Да спросил прост. А то мало ли, в этом ЖСе чего только нет
Я когда после Питона начинал первый код писать, просто офигевал от всяких альтернативных синтаксисов


>>2627023
Жестяка...
Аноним 01/03/23 Срд 21:18:42 2627032 207
>>2626989
функция высшего порядка это называется, когда функция как аргумент передается.
А че они про присвоение в переменную написали хуй пойму, у них же самих это называется function expression.
Аноним 01/03/23 Срд 22:24:40 2627095 208
kill-it-with-fi[...].gif 1382Кб, 300x224
300x224
>>2627032
Ну тут как бы, есть возможность положить в переменную функцию => JS имеет функции первого порядка.
Функция возвращающая и/или принимающая функцию - функция высшего порядка, как ты и сказал.

>>2627023
> IIFE
пик стронли релейтед
А вообще, функцию возвращает функцию, как минимум чтобы было по реактовским правилам этот должен быть хук читай: нейминг, или внутри IIFE оно стриггерится?
Плюс результат всё ещё надо положить в переменную. Видеть такое прямо в пропах компонента я точно не хочу.
Вообще, когда я думал как это закостылить, в голову пришёл другой костыль, но отдаю победу тебе
Аноним 01/03/23 Срд 23:14:17 2627159 209
>>2627023
Разве так можно? хуки же сверху должны быть?
Аноним 01/03/23 Срд 23:31:38 2627167 210
>>2627159
по идее должны быть можно, если он вызывается всегда, а не внутри какого-то условного оператора. Главное чтобы порядок хуков сохранялся во время повторного вызова компонента.
Аноним 02/03/23 Чтв 00:34:19 2627217 211
Аноним 02/03/23 Чтв 15:26:59 2627700 212
Как в несте получить данные о том, какая тема у юзера выбрана? Хотел через useEffect в _app получить данные из локалстореджа (и там же тема подключается к приложению, поэтому там же хочу менять тему, если пользователь переключит её, что бы тема для всего приложения сразу менялась), но window.addEventListener('storage', fn); срабатывает только на удаление из стореджа. Что я делаю не так? Как лучше сделать?
Аноним 02/03/23 Чтв 15:38:48 2627715 213
>>2627700
а зачем тебе подписка, почему просто localStorage.getItem не можешь сделать в useEffect'e?
Аноним 02/03/23 Чтв 15:43:16 2627721 214
>>2627715
Я по кнопке меняю статус темы в сторедже. Хочу что бы кнопку нажал - сторедж поменялся - поменялась тема приложения (которая подключена в корне приложухи в _app)
Аноним 02/03/23 Чтв 17:15:12 2627802 215
>>2627700
>нест
>useЕffect
Дали им редукс, так нет же, будем с событиями пердолиться.
Аноним 02/03/23 Чтв 18:54:23 2627863 216
>>2627802
Как с редуксом сохранить состояние выбранной темы, после закрытия, а потом открытия вкладки?
Аноним 02/03/23 Чтв 19:27:32 2627880 217
>>2627863
Подписаться на изменения в сторе и писать в свой локалсторадж.
Аноним 02/03/23 Чтв 19:42:10 2627895 218
>>2627880
И нахуя, если есть нативный? Советы даёшь пиздатые, спасибо.
Аноним 02/03/23 Чтв 20:26:41 2627941 219
>>2627895
Ну и трахайся тогда сам со слежкой за локалстороджем.
Аноним 02/03/23 Чтв 20:37:29 2627948 220
>>2627941
Так ты предлагаешь для одной микрофитчи тащить либу. Ты ебанутый?
Аноним 02/03/23 Чтв 22:26:28 2628030 221
>>2627948
Я тебе предлагаю делать нормально, чтобы изменение состояния приложения ложилось в хранилище отдельно, а не так, что ты сначала сохранил куда-то, потом чешешь репу как настройку обратно подсосать. Сейчас у тебя локалсторадж, завтра куки, послезавтра - база, каждый раз будешь изобретать костыль?
Не нравится редукс - выбирай другой магазин, тыщи их.
Аноним 02/03/23 Чтв 23:00:34 2628061 222
image.png 47Кб, 767x349
767x349
>>2627700
> Что я делаю не так?
Не читаешь документацию, как и все в этом треде.
Почему ты ее не читаешь, можешь объяснить?
Аноним 03/03/23 Птн 07:08:22 2628226 223
Аноним 03/03/23 Птн 09:32:35 2628288 224
image.png 5Кб, 189x153
189x153
>>2628226
Всмысле? А что должно быть?

или ты хотел чтобы это так было?
Аноним 03/03/23 Птн 10:00:52 2628306 225
>>2628288
Я хотел чтобы когда селект внизу модалки, его опции поверх модалки открывались и за границы модалки выходил
Аноним 03/03/23 Птн 11:10:20 2628332 226
IMG202303031409[...].jpg 13Кб, 688x517
688x517
Аноним 03/03/23 Птн 11:18:31 2628340 227
Аноним 03/03/23 Птн 13:25:28 2628422 228
Че такое дескрипторы?
Аноним 03/03/23 Птн 13:36:08 2628437 229
>>2628030
Я просто изучаю некст, и как передавать данные с клиента на сервер и т.д. У меня банальное приложение, которое отрисовывает несколько карточек. Библу подключить можно в любой момент. Хотел использовать нативные вещи.
>>2628061
Умел бы я читать.jpg
Аноним 03/03/23 Птн 14:15:28 2628505 230
Как вы делаете модальные окна на реакте? Как анимировать закрытие окна, если оно удаляется из дома или делается display none? Оба случая срабатывают сразу и transition не успевает отработать
Аноним 03/03/23 Птн 14:26:12 2628519 231
Аноним 03/03/23 Птн 14:27:58 2628521 232
>>2628519
Во вью это встроено в сам фреймворк кстате
Аноним 03/03/23 Птн 14:30:02 2628523 233
>>2628519
Спасибо. А какие альтернативы? В вью тоже через внешнюю либу приходится это делать? А в относительно новых инструментах, особенно svelte? Почему-то думал, что такое можно делать без сторонних библиотек.
Аноним 03/03/23 Птн 14:31:34 2628524 234
>>2628521
Тоесть, если мне это не надо, то вуе все равно насрет этим в бандл?
Аноним 03/03/23 Птн 14:31:37 2628525 235
Аноним 03/03/23 Птн 14:36:02 2628530 236
>>2628524
Тебе анимации не нужны? Твоя специальность UI для незрячих?
Аноним 03/03/23 Птн 14:41:50 2628532 237
>>2628530
А если серьезно то во вьюжс компилятор шаблонов делает кучу оптимизаций, так что если ты не засунешь транзишен в шаблом то и в бандле транзишена не будет, а дальше тришейкинг бандлера работает
Аноним 03/03/23 Птн 14:42:58 2628535 238
Может кто-нибудь написать скриптик для скрытия всех тредов в /b, кроме webm тредов (желательно ещё музыкальных тредов)? Вам практика, а мне изоляция от потоков дегенеративного говна.
Аноним 03/03/23 Птн 15:06:50 2628557 239
>>2621854
схуяли вью выше реакта?
Я думал реакт более гибкий и востребованнее
Аноним 03/03/23 Птн 15:07:24 2628559 240
>>2628535
может просто не будешь заходить на двач?
Аноним 03/03/23 Птн 15:08:08 2628561 241
>>2628559
Это слишком просто.
Аноним 03/03/23 Птн 16:09:27 2628625 242
Какая же параша, этот ебучий фронтенд. Я хуею. Читаешь доку "нашей прогрессивной, удобной, 'всё есть' библиотеки", натыкаешься на "а для фитчанейм, мы советуем использовать наш 'суперудобный пакет залупа 3000. Просто установите залупа 3000 и внесите вашфреймворк.конфиг эти три строчки'.
Устанавливаешь залупа 3000, вносишь три строчки в конфиг, запускаешь - миллион ошибок в консоле, нихуя не работает. Заходишь на сайт фреймворка, там тоже самое "три строчки в конфиг и всё". И так со всем. Ситуации, где я просто сделал все шаги из "getting started" и всё заработало, можно по пальцам сосчитатью. Вы ну не вы, ананасики,а разрабы пакетов либо делайте рабочие пакеты, либо более детальную документацию, я хуй знает.
#Горижопа.
Аноним 03/03/23 Птн 16:17:15 2628631 243
>>2628535
Раз куклу ты поставить не можешь, от зависимости избавиться не можешь, то только так >>2623223
Аноним 03/03/23 Птн 16:29:18 2628638 244
>>2623223
Т.е. я правильно понимаю
>чатгпт я буду 3 дня объяснять что мне надо
>живому человеку — не буду
?
Ну с такими софтскиллами тебе точно перезвонят.
Аноним 03/03/23 Птн 16:44:40 2628658 245
>>2628625
Ты еще ембедед не видел, там +1000 к жопагорению. Написал криво код - сгорела плата нахуй
Аноним 03/03/23 Птн 16:49:34 2628671 246
>>2628658
>Написал криво код - сгорела плата нахуй
Ну это личная ответственность пишущего, от такого не особо горит. Типа "сам виноват, хуёво продумал", а тут ты просто по мануалу все шаги делаешь, тупо копипастишь необходимый код и не работает. Ещё горит с необходимости устанавливать доп. библиотеки. Блять, я установил ваш пиздатый реакт! Нет, установи ещё вот этот пакет, вот этот пакет, жопу подтирать этим пакетом, смывать говно этим пакетом и т.д. Ну да похуй.
Аноним 03/03/23 Птн 17:42:44 2628735 247
Пацаны, как у вас аналог OpenGL\SDL называется? Хочу NES эмулятор на чистом жс написать.
Аноним 03/03/23 Птн 18:15:13 2628754 248
Аноним 03/03/23 Птн 18:26:19 2628765 249
>>2628754
Сяп.
Да просто так. Ну и в качестве портфолио
Аноним 03/03/23 Птн 20:18:37 2628832 250
>>2628340
не понял о чем ты все равно
Аноним 03/03/23 Птн 20:34:18 2628840 251
Аноним 03/03/23 Птн 21:07:48 2628876 252
>>2628557
>схуяли вью выше реакта?
библиотека не может быть выше фреймворка.
Аноним 03/03/23 Птн 22:06:13 2628937 253
Безымянный.jpg 50Кб, 606x368
606x368
>>2621834 (OP)
Сап наносеки, изучаю бэм подскажите по пику правильно ли я неймаю на примере хедера. Вот есть блок хедер в нем лемент
header__content внутри него header__naming -> header__naming-icon или правильнее будет назвать header-icon?
Аноним 03/03/23 Птн 22:26:28 2628962 254
>>2628671
Ага, только учти, что тебе спецификацию на железо выдал производель и если там чего-то нет - то ты можешь очень долго выяснять детали, а сроки горят. Поэтому есть желание попробовать решить так, как на другой железке на поколение младше работало или искать в интернете, а гуглить схемы - это тебе не джаваскриптовые ошибки на стаковерфлоу искать.
Аноним 03/03/23 Птн 22:27:08 2628964 255
>>2628937
> изучаю бэм
Нахуй не нужон бэм ваш.
Аноним 03/03/23 Птн 22:30:17 2628969 256
>>2628937
Похоже на правду. У элементов не подэлеметов, если есть вложенные елементы то они все к блоку относятся, поэтому у всех элементов один постфикс block-name__element-name
а не несколько block-name__element1-name__element2-name
Аноним 03/03/23 Птн 22:36:12 2628976 257
>>2628964
Вот у тебя СПА с зашитыми в компонеты стилями, тут вдруг приходит Кабан Кабаныч и говорит нечеловеческим голосом
- Сычов. Купили мы Быстрикс24, лендосы будем делать там, чтобы вести клиентов в воронке продаж. Захуярь в них наш копроративный стиль!
Аноним 03/03/23 Птн 22:55:43 2629006 258
16777958309750.png 883Кб, 1080x1260
1080x1260
>>2628976
> быстрикс 228
Вытекаю с работы JS треда в php тред.
Аноним 03/03/23 Птн 23:14:17 2629033 259
>>2629006
Поридж малиновый, Кабаныч не твоя мамка, он не спросит на чем тебе нравится очередной фронтенд делать. Или будешь по нищим галерам бегать, убегая от задач серьезногу бизнесу.
Аноним 03/03/23 Птн 23:28:32 2629045 260
Какие книги есть по оптимизации html\css\js с этими вашими рефлоу? На амазоне поискал, чет ничего хорошего.
Аноним 04/03/23 Суб 04:26:21 2629109 261
>>2629045
Перестань читать книги и начни читать блоги разработчиков браузеров и движков.
Аноним 04/03/23 Суб 10:12:05 2629177 262
>>2629109
Посоветуй какие-нибудь?
Аноним 04/03/23 Суб 10:26:06 2629180 263
image.png 7Кб, 388x543
388x543
Котаны, помогите, пожалуйста, ибо я уже заебался гуглить не то/не находить решение

Мне нужно сделать кнопку, при нажатии на которую справа выплывет окошко с текстом (примерно изобразил на пике)
Я понимаю, что надо эвент клика, #кнопка:after, но дальше неебу, совсем тупик
Помогите, пожалуйста!
Аноним 04/03/23 Суб 11:04:49 2629206 264
>>2629180
хуево гуглил.

нахуй там афтер?

кнопка.евентклика(клик, евент => {
блокТекста.добавляешьКласс(Актив)
})

ну а если нужен афтер то этой же кнопке и дававй акитив, у кнопки есть стили и эти стили афтера идут у актива.
Аноним 04/03/23 Суб 11:07:19 2629211 265
>>2629180
Если ты не тот анон с дропдауном, то вот https://html5css.ru/css/css_tooltip.php первая ссылка в гугле с летсдуит, не стукойте.
А так идея как с дропдаунами.
Аноним 04/03/23 Суб 11:16:36 2629225 266
Аноним 04/03/23 Суб 11:24:22 2629232 267
>>2628976
Сынок, я не в РФ. Конечно, если Джон Бор скажет что БЭМ нужен - то я буду делать на этом говне, или на любом другом но пока он что-то популярностью не пользуется.
Нужна помощь с фронтом Аноним 04/03/23 Суб 11:29:11 2629237 268
Я быкенд перешедший в девопс с 4 годами опыта работы и еще более продолжительным бекграундом диванного программирования. Для реализации своих задумок не хватает знаний, а вернее опыта, по фронту. Я в принципе знаю всю херню HTML, CSS, JS, делал какие-то простые и даже более-менее сложные верстки из говна и палок, писал на JS, даже применял Vue и bootstrap. Но если быкенд с апишкой на джанге я смогу поднять за 30 минут, то сверстать страничку у меня займет 1-2 дня, особенно если ебаться с инструментарием на ноде. И реализовано это все будет кое-как, с кучей костылей на CSS. Вощем испытываю трудности, а хотелось бы набить руку, создать нейронных связей под это.

Я более-менее понимаю план действий, мне нужен скорее support & assistance. Сейчас двигаюсь по роадмапу https://roadmap.sh/frontend в котором половину всего я и так достаточно глубоко знаю, а про остальную половину имею представление.
Посоветуйте каких-нибудь специальных макетов для обучения верстке от простых к сложным. Может знаете какие-то ресурсы, которые мне будут полезны. Если захотите поменторить, вот телега @perdaxx
Аноним 04/03/23 Суб 11:38:52 2629251 269
>>2629237
Пчел, ты двигаешься в обратном направлении. Верстают пускай вкатуны-джуниоры, а ты лучше развивайся дальше в бекенд и инфраструктуру. Базы данных там, клауд ф-ции, лоад балансеры, кластер разверни и тд. Нахрен тебе нужно кнопки красить?
> быкенд с апишкой на джанге я смогу поднять за 30 минут, то сверстать страничку у меня займет 1-2 дня, особенно если ебаться с инструментарием на ноде. И реализовано это все будет кое-как, с кучей костылей на CSS
Это норма.
Аноним 04/03/23 Суб 11:44:10 2629266 270
>>2629251
Мне для себя нужно. У меня периодически возникают идеи которые хочется реализовать, вот например из последнего - сделать инструмент управления трафиком, с роутингом трафика между различными прокси / VPN, с мониторингом, блекджеком и прочим. Писюн падает когда представляю как я это все верстать буду
Аноним 04/03/23 Суб 12:24:14 2629353 271
>>2629237
Есть же UI киты, попробуй из них собирать страницы
Аноним 04/03/23 Суб 12:37:05 2629378 272
Аноны, такой от залетыша. Несколько лет назад еще существовал стереотип, что во фронте постоянно меняются технологии, и то, что было модным сегодня, через годик все уже могли забыть. Как сейчас с этим стереотипом? Вроде реакт, ангулар и вью уже много лет у вас и ничего больше нового.
Аноним 04/03/23 Суб 12:52:10 2629394 273
image.png 300Кб, 2062x1009
2062x1009
>>2629237
>сверстать страничку у меня займет 1-2 дня
ну, это норм.
т.е. у скилового версталы вротендера простенькая стр занимает +- день, но на более сложные уходит и больше.

при этом, как я понял, ты делаешь для себя, т.е. ты не обременен необходимостью делать пиксель перфект.
пиксель перфект же - это когда ты должен сделать верстку идентично как на макете в разных размерах.
по этой причине верстка не такая уж и быстрая работа.

+ васянские либы, которые приходится пердолить под разные устройства, т.к. внезапно, они имеют кучу кастылей и условностей.

так что не совсем ясно зачем тебе ментор. и не совсем понятен бугурт про долгую верстку.

допустим на пик я бы взял 3 дня. самая простая верстка с простейшей тестовой логикой. скорее всего управился бы и за день, но нахуй об этом знать пму?
Аноним 04/03/23 Суб 12:58:51 2629400 274
>>2629266
Так начни делать просто. Сначала консольный интерфейс, веб оставь на потом.
> Писюн падает когда представляю как я это все верстать буду
Это норма.
Аноним 04/03/23 Суб 13:32:15 2629415 275
Аноны, я столкнулся с проблемой. У моего скрипта есть класс которой выполняет всю работу. Я могу нажимать на кнопку, чтобы работа начиналась или прекращалась. Однако, чтобы работа прекратилось, я должен подвязать все методы моего класса выполнять проверку на флаг.

Иными словами мне придется каждый раз в теле каждого метода перед его выполнением проверять
if (this.canceled) { return }

Но чё-то такое себе. А если мне к примеру придется как-то изменить то что внутри курли брейсов {}? Есть в JS'е декораторы как в питоне, чтобы я мог обернуть все свои методы типо
@stopcondition
function start() {}

@stopcondition
function doThing() {}

?

Как вообще лучше обустраивать отмену работы какой-то хуйни?
Аноним 04/03/23 Суб 13:32:51 2629416 276
>>2629415
Обосрался немного, у метода не будет function, это же метод.
Аноним 04/03/23 Суб 14:22:37 2629438 277
>>2629415
https://babeljs.io/docs/babel-plugin-proposal-decorators
https://www.typescriptlang.org/docs/handbook/decorators.html

Вообще странно, что ты задался мыслью делать проверки только внутри класса. То есть в UI ты никак не отображаешь процесс выполнения и кнопки не повязаны к текущему состоянию экземпляра? То есть кнопки всегда доступны к нажатию?

Ну а вообще, декораторы прикрутить можно, может однажды они уже докатятся в одну из версий JS нативно. В принципе, ничего плохого не вижу, если ты хочешь добавить валидацию внутри класса, но что-то есть чувство, что что-то пошло не так.
Аноним 04/03/23 Суб 14:23:47 2629440 278
>>2629237
Тебе дизайн важен или пох?
Аноним 04/03/23 Суб 14:27:27 2629444 279
изображение.png 120Кб, 800x600
800x600
>>2629440
Более-менее важен. Люблю Material UI, чтоб вот эти анимации форм/кнопок были как в ведроиде. Я так однажды сделал неплохой интерфейс с помощью Vue + Material UI, 3 дня на это потратил
Аноним 04/03/23 Суб 14:27:49 2629445 280
>>2629438
Мне тайпскрипт не подходит, у меня юзерскрипт. Там приходится на чистом жсе всё писать.

У меня по сути одна кнопка условно "Начать работу" при нажатии на которую совершается целый пласт действий с разными методами. В любом момент пользователь может нажать "Прекратить работу" и мне нужно прервать все действия и окатить до начала. По сути хватает обычного ретурна, скорее всего, по крайней мере с ретурном вроде как работает всё. Но ощущение костыльности присутствует.
Аноним 04/03/23 Суб 14:31:57 2629450 281
>>2629440
Ох, вспомнил как пытался сделать вращающуюся кнопку обновления, пиздос как наебался с тем чтоб она ровно вращалась и стейт "вращается/не вращается" нормально отрабатывал. Я кажись так и не смог нормально останавливать вращение
Аноним 04/03/23 Суб 14:49:19 2629468 282
Аноним 04/03/23 Суб 14:56:41 2629477 283
>>2629468
Контролелр прикольная штука, благодарю.

А обертку в каком виде? Типо написать декоратор, а потом вручную после того как создал инстанс класса прописывать инстанс.метод = декоратор(метод)? Можно конечно, но хз. А с функцией я не очень понял к сожалению.

Сейчас я пока решил тупо вставлять if (this.isCanceled) { return } в начало, пока работает вроде.
Аноним 04/03/23 Суб 15:19:06 2629498 284
>>2629477
Декоратор в простом виде можно накостылить по тип такого:
deco(func, ...args) {
console.log("'decorator'")
func.apply(this, args)
}

Принимает функцию и произвольное количество аргументов, вызывает функцию в контексте объекта, с которого был вызван.

В твоём случае может быть что-то вроде:

deco(foo) {
console.log("deco checks");
foo.call(this)
}

hueta(text) {
this.deco(function () { console. log(text)})
}

С функцией если, то у тебя будет отдельный метод в котором будут проверки на возможность выполнения, например
isRunnable() { return this.isCanceled }
Сейчас здесь ничего нет, одно поле для ИФА, но потом может появиться дополнительная логика. В этом случае достаточно будет поправить только его.
Этот метод ты вызываешь по цепочке
this.isRunnable() && (function () { actualJob here }) ()
Либо если это переписать, аналогично на ифы
if (this.isRunnable()) {
do actual job here
}
Аноним 04/03/23 Суб 15:20:17 2629499 285
>>2629498
Вообще классы, методы, можно такую проверку на возможность выполнения вынести в геттер, раз на то пошло
Аноним 04/03/23 Суб 15:22:43 2629501 286
>>2629498
И да, я проебался немного, здесь это уже не совсем декоратор, скорее обёртка
Аноним 04/03/23 Суб 15:44:39 2629520 287
1677933880946.png 15Кб, 374x455
374x455
>>2629498
Окей, понял. Ну в принципе это действительно обертка, декоратор должен возвращать обертку в которой уже перед вызовом основной функции выполняется какая-то фигня.
Аноним 04/03/23 Суб 17:56:45 2629657 288
Во что перекатываться фронту, Express или Nest?
Аноним 04/03/23 Суб 18:40:13 2629729 289
>>2629657
Expess подмножество Nest'a
Аноним 04/03/23 Суб 19:54:19 2629802 290
1677948861266.png 10Кб, 597x83
597x83
1677948861271.png 13Кб, 748x162
748x162
А если бы вам захотелось в собственном скрипте добавить новую кнопку к всплывающей менюшке взаимодействия с постом из куклоскрипта, то как бы вы привязали ивент взаимодействия на эту новую кнопку?

Нужно же как-то узнать с каким постом ассоциирована кнопка.
Аноним 04/03/23 Суб 20:01:36 2629806 291
>>2629729
Вообще ты прав, будет логичнее пойти по пути Express -> Nest
Аноним 04/03/23 Суб 20:18:40 2629820 292
>>2629802
А где в html'е рендерится менюшка?
Аноним 04/03/23 Суб 20:19:49 2629821 293
1677950391462.png 21Кб, 721x178
721x178
>>2629820
К сожалению на самом верху древа. Я тоже хотел определить по положению ноды.
Аноним 04/03/23 Суб 20:25:59 2629826 294
>>2629821
Я что-то не понимаю. Кнопка, которая относится к посту, не рендерится в шапке поста? Это где такое? Ща на даче посмотрел, там эта кнопка в диве с айдишкой номера поста.
мимо не шарю за ваш куклоскрипт
Аноним 04/03/23 Суб 20:27:36 2629828 295
>>2629826
Нет, судя по всему она рендерится на верху древа и через абсолютное позиционирование css'а подгоняется под пост. Мда, боюсь тут придётся сильно костылить.
Аноним 04/03/23 Суб 21:37:55 2629906 296
image.png 28Кб, 688x210
688x210
image.png 5Кб, 790x39
790x39
>>2629802
чел, в отладчике "ответить" вот так показывается, попробуй так же
на самой кнопке открытия меню data- атрибут, скорее всего запоминает его глобально при клике или хз какая макака это сочиняла
Аноним 04/03/23 Суб 21:40:55 2629908 297
>>2629826
это норма, модальные окна обычно внизу дерева и рисуют, чтобы они поверх всего отображались и быстро добавлялись\удалялись из дома
Аноним 04/03/23 Суб 21:48:00 2629917 298
1677955682423.png 14Кб, 722x115
722x115
1677955682428.png 5Кб, 349x100
349x100
>>2629906
У меня почему-то нихуя не показывается. Только на созданную менюшку ивент навешан.

Ну а то что у тебя на скрине, там скорее всего обращение к локальным переменным, в моём же контексте не будет ни к каким айидникам и намам доступа. Глобальной переменной такой нет. Хуй знает как адекватно без изъебов получить пост при кнопке.
Аноним 04/03/23 Суб 23:31:14 2630018 299
>>2629917
Исходники куклоскрипта посмотри, как он хэндлит ивенты этих менюх.
Аноним 04/03/23 Суб 23:33:11 2630020 300
Стрелочная функ[...].png 14Кб, 800x230
800x230
не стрелочная ф[...].jpg 23Кб, 342x240
342x240
Что не так с этой стрелочной функцией? Почему при переписывании её в обычную функцию, она не работает? Более того - она перестаёт работать даже если просто добавить () перед =>. Какого хуя? Это точно стрелочная функция вообще?
Аноним 04/03/23 Суб 23:36:19 2630025 301
image.png 24Кб, 551x380
551x380
image.png 18Кб, 440x287
440x287
>>2629917
да, ты прав, там замыкание при клике на кнопке
Аноним 04/03/23 Суб 23:36:57 2630027 302
>>2630020
Попробуй let user = (item) => { return users.find(item).id == 1 }
Питухонер мимокрок, на калжсе почти не писал
Аноним 04/03/23 Суб 23:37:48 2630029 303
>>2630020
find принимает функцию в качестве аргумента, а ты че насрал?
Аноним 04/03/23 Суб 23:38:22 2630031 304
функция.jpg 24Кб, 414x243
414x243
>>2630020
Пиздец нахуй, разобрался. Точнее решил прочитать дальше строчку ниже в учебнике. Найс объяснение, ставлю лайк. Сперва сотворим хуйню, а потом расскажем, что было сделано.
Аноним 04/03/23 Суб 23:40:04 2630034 305
>>2630029
Да теперь я уж понял, что функция просто передаётся в качестве аргумента.
Аноним 04/03/23 Суб 23:50:10 2630044 306
>>2630031
А потом ты познаешь мир с "вот вам удочка под видом базуки, дудоньтесь сами". А ты и уже сгорел, кекв.
Аноним 04/03/23 Суб 23:51:08 2630045 307
image.png 21Кб, 548x344
548x344
image.png 6Кб, 126x105
126x105
>>2630025
вообще можно и на саму кнопку евент повешать, потому что таймаутом все равно новую таску в конец добавляю, поэтому еще проще
Аноним 04/03/23 Суб 23:52:23 2630046 308
>>2630025
Я так понял чтобы у меня это работало я должен сделать по сути также, но первый ивент навесить onmouseover ну и в свою модаль прикрепить кнопку с сохранением поста после таймаута 100мс к примеру, чтобы модаль успела появиться.

Я только не понял зачем ты < 0 проверяешь а потом ретурнишь, это чтобы избежать что?
Аноним 04/03/23 Суб 23:53:02 2630047 309
>>2630046
Хотя не, тогда onmouseover у меня будет спамить миллиард кнопок, хуйня идея.
Аноним 04/03/23 Суб 23:54:10 2630050 310
>>2630047
Хотя в теории можно проверку сделать есть ли эта кнопка уже или нет. Придется мутейшен обсервер навесить чтобы новым постам ивент прибавлялся тоже. Чет немного гемор, но это лучше чем я представлял.
Аноним 05/03/23 Вск 00:08:01 2630064 311
1.jpg 39Кб, 520x312
520x312
Почему второй alert выдаёт -1?
Аноним 05/03/23 Вск 00:23:22 2630076 312
>>2630064
В функцию надо передать аргумент, который обрабатывается.
Может оценишь вариант подумать пять сек, а не спамить вопросы на каждый пук?
Аноним 05/03/23 Вск 00:28:10 2630079 313
>>2630076
Я в метод передал функцию в качестве аргумента. Хуле ему не нравится? Почему он не может Васю найти?
Аноним 05/03/23 Вск 00:29:21 2630082 314
>>2630064
Посмотри что передаётся в findIndex, что передаётся в то что передаётся в findIndex, посмотри что ты написал в том что передал в findIndex. Посмотри описание findIndex на mdn.
> найти индекс в users, users (массив).name (undefined) == "Уасиа"

кекусы
Аноним 05/03/23 Вск 00:31:16 2630083 315
Аноним 05/03/23 Вск 00:32:28 2630085 316
64H7Qxgj4fI.jpg 45Кб, 600x586
600x586
>>2630082
>>2630083
Блять, какое же говно это ваше программирование.
Аноним 05/03/23 Вск 00:33:47 2630086 317
1677965624556.mp4 341Кб, 1920x1080, 00:00:23
1920x1080
1677965624556.png 37Кб, 726x386
726x386
>>2630045
Найс, анон, оно работает, спасибо. Не знал что mouseover только один раз екзеклютится. Я думал каждый раз когда по элементу буду проводить он каждый раз будет привязанную функцию запускать.
Аноним 05/03/23 Вск 00:40:24 2630090 318
>>2630086
а почему ты на клик не хочешь привязаться? Если кликнешь - модалка точно появится, а если просто водишь - не факт.
Аноним 05/03/23 Вск 00:42:08 2630091 319
>>2630090
Так у меня, как ты можешь заметить на видео, менюшка автоматически открывается, так в кукле сделано. На клик нет смысл привязываться, не особо получится. Каждый раз когда я навожусь, менюшка открывается.
Аноним 05/03/23 Вск 00:59:19 2630095 320
2.jpg 35Кб, 543x272
543x272
>>2630082
Даже если исправить на user.name что в ретёрне, что в алёрте, нихуя не меняется - возвращается андефайнд. Блять, да какого хуя, всё же нормально выглядит.
Аноним 05/03/23 Вск 01:01:00 2630096 321
>>2630095
Ехал юзер через юзер.
Аноним 05/03/23 Вск 01:02:56 2630097 322
1677967378859.png 4Кб, 523x56
523x56
1677967378861.png 86Кб, 693x346
693x346
1677967378862.png 5Кб, 419x62
419x62
>>2630090
Анон, а ты не знаешь почему я всплывающую форму не могу открыть? Я знаю что у свг нет клика, поэтому диспатчу ивент, но он не хочет.
Аноним 05/03/23 Вск 01:11:24 2630098 323
>>2630095
Довен, твоей аргументной функции файнд будет передавать значения на проверку, а она нихя не принимает.
Аноним 05/03/23 Вск 01:13:53 2630099 324
>>2630095
>>2630064
Бля, ты какую-то хуйню пишешь. У тебя ошибка в логике, надо было писать

users.findIndex(function findName(element) {
return element.name === 'Вася';
})

Тогда бы заработало. Либо

users.findIndex(user => {return user.name === 'Вася'})

Так тоже сойдёт.
Аноним 05/03/23 Вск 01:40:08 2630103 325
>>2630095
Наркоман чтоле?
Чем твоя стрелочная функция отличается от обычной, которую ты пытаешься передать?
У стрелочной функции нет названия, ты принимаешь параметром user элемент массива.
Во втором случае ты обзывает функцию user и нихуя в неё из массива при проходе findIndex не принимаешь.
Нарабатывай навыки дебаггинга и гугления. Суй хотя бы промежуточные console.log и выводи значения переменных если не понимаешь что там не так.
Я тебе предложил посмотреть findIndex на mdn. Ты посмотрел? Нет. А там расписана сигнатура функции и есть примеры.
Навыки гугления я за тебя тоже не смогу наработать.
Аноним 05/03/23 Вск 02:04:32 2630111 326
image.png 4Кб, 470x41
470x41
image.png 2Кб, 419x26
419x26
>>2630097
Может потому что через jquery эвенты накинуты, попробуй через него и вызывать.
Кстати, новые посты сами подпишутся на эвент, если через него сделашь.
Аноним 05/03/23 Вск 02:08:13 2630113 327
1677971295382.png 63Кб, 826x790
826x790
1677971295390.png 51Кб, 829x658
829x658
1677971295390.png 61Кб, 823x879
823x879
1677971295390.png 32Кб, 728x512
728x512
>>2630097
БЛЯТЬ АНОНЫ ОНО СРАБОТАЛО

Мне страшно нахуй, эта хуйня отлично понимает меня, запоминает что было до этого и МОМЕНТАЛЬНО генерирует ответ. Я раньше не пользовался чатгпт, зарегал на всякий случай. Сейчас решил воспользоваться и охуел.
Аноним 05/03/23 Вск 02:10:27 2630114 328
1677971429188.png 6Кб, 410x69
410x69
1677971429197.png 4Кб, 225x123
225x123
1677971429197.png 7Кб, 360x126
360x126
1677971429198.png 63Кб, 899x705
899x705
>>2630111
Анон, мне сетка подсказала таким образом ивент инициализировать. Я не понял нихуя почему это сработало, но оно работает.
Аноним 05/03/23 Вск 02:13:09 2630115 329
1677971591984.png 42Кб, 841x553
841x553
>>2630113
Забыл показать третий вопрос свой
Аноним 05/03/23 Вск 12:45:44 2630272 330
1678009546302.png 47Кб, 689x271
689x271
1678009546312.png 3Кб, 359x52
359x52
>>2630111
Анон, я сейчас понял что я хуйню пытался сделать и можно просто спокойно на ссылку кликать, а не свг, эффект тот же почти, а также проще.
Аноним 05/03/23 Вск 12:50:55 2630277 331
1678009857536.png 13Кб, 378x186
378x186
1678009857545.png 19Кб, 217x187
217x187
1678009857546.png 16Кб, 695x218
695x218
>>2630111
Ну и к слову по какой-то причине триггер не работает. А штука которую чатгпт дала и которая работает на свг почему-то отмечена как устаревшая. Как тогда не депрекейтед способом вызвать клик событие интересно на конкретно этот свг?
Аноним 05/03/23 Вск 13:57:23 2630350 332
>>2629225
>>2629211
Ну в принципе, может сработать
Спасибо, анонче
Аноним 05/03/23 Вск 14:00:13 2630353 333
>>2629206
Я чет совсем нуб

получается что-то вроде:
btn.addEventListener (click, event => {
textBlock.addClass ( а что сюда добавлять? )
})
Аноним 05/03/23 Вск 16:05:35 2630518 334
Заканчиваю через пару месяцев отработку барщины ученический на галере, хочу спрыгнуть на продукт. Реально полуторагодовалому вкатышу попасть в это ваше МЯСО фронтом (ангуляр и реакт)? А то я с алкоритмами не очень, зато английский Б2.
Аноним 05/03/23 Вск 16:45:05 2630579 335
>>2630518
>Реально полуторагодовалому вкатышу попасть в это ваше МЯСО фронтом (ангуляр и реакт)?
Нет.
Аноним 05/03/23 Вск 17:01:21 2630613 336
>>2630518
Чем тебе на галере не сидится?
Аноним 05/03/23 Вск 17:12:12 2630628 337
2023-03-05 17.1[...].png 6Кб, 239x88
239x88
promise.then (function(arg1) {console.log('___test___', arg1)});
promise.then (function(arg1) {console.log('___testname___', arg1.name)});
promise.then (function(arg1) {console.log('___test___', arg1)});
setTimeout(function () {promise.then (function(arg1) {console.log('___timertest___', arg1.name)});}, 3000);

Четыре строки подряд. Первая выдает готовый object, в котором естественно заполнено property "name".
Вторая выдает undefined
Третья - опять же готовый object, в котором точно так же присутствует не пустое property "name".
Четвертая сука выдает что я хочу получить, значение property "name".
Чяднт?? Пытаюсь разобраться, поэтому подряд это написал, а понятнее не стало. Если then ждет пока promise не исполнится, почему я не могу получить сразу значение property, но могу корректно получить весь object целиком?
Аноним 05/03/23 Вск 17:20:19 2630638 338
>>2630628
Потому что чтобы что-то достать по цепочке, надо это что-то из функции вернуть.
console.log возвращает undefined, его ты и получаешь.
promise.then(function (resolvedData) {
console.log('hurts moe');
return resolvedData.name;
}).then(function (name) { console.log(name) })
Аноним 05/03/23 Вск 17:21:46 2630640 339
>>2630628
Покажи весь код, в этих твоих огрызках хуй что понятно.
Аноним 05/03/23 Вск 17:27:54 2630646 340
Аноним 05/03/23 Вск 17:30:58 2630650 341
>>2630628
>>2630638
> console.log возвращает undefined
Проебался. Так то оно так, только ты нихуя не возвращаешь, а это аналогично если написать строке
return; //и тоже вернёт undefined
И да, с этим согласен >>2630640
А лучше уж залей в песочницу если тебя гложет что-то. Проёбано форматирование не помогает понять что ты делаешь.
Аноним 05/03/23 Вск 17:31:25 2630651 342
>>2630646
В русских продуктах плотят так же или меньше, если что. Если конечно, мы не берём случаи с зарплатой в виде крипты на карту армянского банка.
Аноним 05/03/23 Вск 17:40:39 2630659 343
2023-03-05 17.2[...].png 190Кб, 1098x529
1098x529
2023-03-05 17.3[...].png 9Кб, 342x189
342x189
>>2630640
Что-то типа такого.
>>2630638
А почему тогда по таймеру setTimeout(function () {promise.then (function(arg1) {console.log('___timertest___', arg1.name)});}, 3000); я получаю что хочу?
Аноним 05/03/23 Вск 17:58:22 2630675 344
Screenshot20230[...].jpg 257Кб, 1080x2408
1080x2408
>>2630659
Ты делаешь что-то не то.
const p = Promise.resolve({ name: "ahem"})
p.then(arg => console.log(1, arg))
p.then(arg => console.log(2, arg.name))
p.then(arg => console.log(3, arg.nаmе))

На второй строке name на инглише.
На третьей a и e - кириллица
Аноним 05/03/23 Вск 18:02:52 2630679 345
>>2630651
Так и моя галера - огрызок в виде российского офиса, сама компания отчалила. И по деньгам уже ниже рыночка, + всякие приколы начались с увеличением интервалов между пересмотрами до года. А год гребли ниже рынка для меня это порядка 200к потерять.
Аноним 05/03/23 Вск 18:26:21 2630720 346
Аноним 05/03/23 Вск 18:36:12 2630735 347
>>2630679
Ну хуй знает, я как свалил перед СВО с галеры, так за год ничего не апнул. Робота есть и слава богу.
Аноним 05/03/23 Вск 18:40:51 2630739 348
Ананас, надо в общем материалов по бэку на ноде, конкретно NestJS. Есть какие-то достойные варианты может? Документацию глянул, но может есть более концентрированные и прикладные варианты?
Аноним 05/03/23 Вск 18:41:55 2630744 349
>>2630739
Куда уж концентрированней.
Аноним 05/03/23 Вск 18:59:55 2630773 350
image.png 4Кб, 288x116
288x116
>>2630277
у меня работает trigger. Попробуй через MouseEvent.
05/03/23 Вск 19:21:46 2630789 351
1678033308432.png 7Кб, 567x108
567x108
1678033308441.png 50Кб, 784x438
784x438
Открыло. Без всяких легаси функций по типу того инета. Большое спасибо, анон. Запомню что есть такая штука.
Аноним 05/03/23 Вск 19:22:25 2630794 352
Аноним 05/03/23 Вск 19:30:31 2630808 353
Аноним 05/03/23 Вск 19:45:16 2630826 354
Аноним 05/03/23 Вск 20:46:27 2630883 355
А есть в рякте какой-нибудь способ получить ширину экрана до рендера приложения без использования user-agent? Я пробовал через typeof window !== undefined, но там будет ошибка гидрации
useEffect всё-таки вызывается после рендера
Аноним 05/03/23 Вск 20:53:24 2630887 356
>>2630883
Адаптивная вёрстка. 2023. Итоги.
Аноним 05/03/23 Вск 20:58:54 2630892 357
>>2630887
>Адаптивная вёрстка. 2023. Итоги.
Я не профессиональный разработчик, уж простите
Аноним 05/03/23 Вск 21:01:07 2630894 358
>>2630887
>Адаптивная вёрстка
+ мне нужно знать сколько у клиента ширина окна, чтобы отправить ему отрендеренную страницу с сервера nextjs
Аноним 05/03/23 Вск 21:18:26 2630910 359
Аноним 05/03/23 Вск 21:44:31 2630921 360
Аноним 05/03/23 Вск 21:48:45 2630925 361
Рейтаните вкатусю.

Год самостоятельного обучения. Сейчас стек:
фронт: react на next, mobx, axios, sass;
бэк: express, prisma, postgres.

Пробовал: nest, redux, RTK query (непонтно и попа болит), sequelize, jwt, react из коробки с SSR

Из достойных петпроектов - уродливый но агрегатор новостей, с динамическим роутингом и админкой для создания, редактирования и удаления статей + редактор метатегов для каждой страницы. Админка на jwt токена.
Аноним 05/03/23 Вск 21:54:11 2630930 362
>>2630910
useEffect вызывается после вмонтирования, а не до, так что такое не прокатит.
Аноним 05/03/23 Вск 22:38:28 2630955 363
>>2625424
лучше не читай, это та еще хуета.
Аноним 05/03/23 Вск 23:37:58 2631012 364
Аноним 06/03/23 Пнд 00:04:00 2631034 365
>>2630925
Выглядит так будто все описанное ты потыкал но ни в чем толково не работаешь.
Аноним 06/03/23 Пнд 00:06:57 2631037 366
>>2630894
Так посмотри в реквесте, что там клиент отправляет.
Еще подумай как ты будешь менять размеры при ресайзе?

Это на самом деле делается в css и на клиенте само адаптивно ресайзится по правилам.
Аноним 06/03/23 Пнд 00:10:36 2631041 367
Аноним 06/03/23 Пнд 00:13:21 2631044 368
Так че такое дескрипторы?
Аноним 06/03/23 Пнд 01:29:05 2631078 369
1678055345512.png 68Кб, 568x864
568x864
1678055345514.png 60Кб, 569x853
569x853
1678055345514.png 26Кб, 565x377
565x377
Аноны, а как предотвратить дефолтное поведение textarea внутри формы при нажатии CTRL+ENTER? Проверял на двачерской форме под куклой. Я как только не пробовал, при нажатии ctrl+enter он пытается отправить POST запрос. Однако проблема даже не в том, что он не может предотвратить поведение формы.

Скорее проблема в том что я даже не могу заставить условие event.ctrlKey && event.keyCode === 13 отработать. Оно никогда не отрабатывает у меня в форме. Он работает если сделать иф только на нажатие ctrl к примеру, или enter. А как заставить его отследить ctrl+enter? Он сразу же отправляет форму и не реагирует на условие, как будто ивент просто не проходит.
Аноним 06/03/23 Пнд 01:31:02 2631079 370
1678055462803.png 27Кб, 684x136
684x136
>>2631078
Здесь я обосрался кажись но сути не меняет, он с исправленным вариантом тоже не работает.
Аноним 06/03/23 Пнд 04:41:28 2631113 371
>>2630353
<button>Click</button>

const btn = document.querySelector("button");

btn.addEventListener("click", (event) => {
if (btn.classList.contains("clicked")) {
btn.classList.remove("clicked");
} else {
btn.classList.add("clicked");
}
});
Аноним 06/03/23 Пнд 04:42:30 2631114 372
>>2631113
button {
position: relative;
}

button.clicked::after {
content: "clicked content";
position: absolute;
border: 1px solid red;
margin: 0px 10px;
width: 100px;
}
Аноним 06/03/23 Пнд 05:16:15 2631118 373
16742167310721.webm 1432Кб, 888x1116, 00:00:09
888x1116
>>2631113
На addEventListener ругается, 'Cannot read properties of null'
Уже засунул в windows.onload, перемещал script src и всякие другие танцы с бубном
С чем может быть связано?
Аноним 06/03/23 Пнд 05:40:20 2631119 374
>>2631118
квериселектор возвращает нулл?
Аноним 06/03/23 Пнд 07:41:24 2631153 375
>>2631037
ресайз хук уже сделал, а вот как в реквесте посмотреть именно данные окна я не представляю
Аноним 06/03/23 Пнд 07:41:38 2631154 376
>>2630925
Рисуй год опыта и проси сотыгу на собесе
Аноним 06/03/23 Пнд 08:27:40 2631168 377
Бтв, если вы не поняли вопрос, я могу объяснить, только спросите.

Мимо >>2631078
Аноним 06/03/23 Пнд 09:37:17 2631221 378
>>2631168
Выведи в сосноль сам ивент да прокликай его пропертя.
Аноним 06/03/23 Пнд 10:01:01 2631236 379
image.png 4Кб, 429x24
429x24
Аноним 06/03/23 Пнд 10:39:17 2631263 380
>>2631221
Ну я на скринах показал как я пытался ивент привязать, при комбинации ctrl enter он не хотел отрабатывать.
Аноним 06/03/23 Пнд 11:33:35 2631325 381
>>2631263
А мог бы сразу увидеть все свойства события code, key, keyCode, which, ctrl и тпх.
Вместо того, чтобы подбирать комбинацию.
Аноним 06/03/23 Пнд 12:32:54 2631416 382
>>2631236
у тебя кастомнй тег ("кнопкателеграм")?
Аноним 06/03/23 Пнд 12:54:09 2631433 383
>>2631416
Да
Ну суть в том, что у меня страница с контактами и иконка телеги, при нажатии на которую я хочу, чтобы выкатывался ник
Аноним 06/03/23 Пнд 13:02:08 2631443 384
>>2631433
Ты селектишь элемент <knopkatelegram>. Всё точно правильно?

мимо
Аноним 06/03/23 Пнд 13:05:48 2631445 385
>>2631443
Так точно

всё правильно кроме убого id кнопки, не бейте пожалуйста
Аноним 06/03/23 Пнд 13:10:06 2631451 386
>>2631445
ну просто если именно ID, то селектор будет иметь вид #knopkatelegram
Аноним 06/03/23 Пнд 13:13:40 2631452 387
>>2631451
йобаный рот
нет, беда в двойных кавычках, в которые я заносил айди

ну я пень канеш. Спасибо, Аноны!
Аноним 06/03/23 Пнд 18:12:59 2631775 388
image.png 1Кб, 477x51
477x51
Сап, возможно, кто-нибудь знает как можно реализовать подобное:
при рендере компонента у инпута автоматически выставляется фокус и в нём появляется курсор
Аноним 06/03/23 Пнд 18:34:22 2631806 389
>>2631775
inputRef.current.focus();
Вроде так, если в реакте.
Аноним 06/03/23 Пнд 19:06:40 2631850 390
>>2631775
>autoFocus: A boolean. If true, React will focus the element on mount
Забытые технологии предков.
Аноним 06/03/23 Пнд 19:10:42 2631854 391
>>2631775
"Опять чортики за меня текст вводят и по клавиатуре прыгают"!
Аноним 06/03/23 Пнд 19:17:04 2631859 392
Анон, а как быстро находить html элементы в проекте?
Аноним 06/03/23 Пнд 19:18:51 2631862 393
>>2631859
Имею в виду такую ситуацию, например, нужно отредактировать какой-то элемент, я запускаю локалхост и ищу его классы через код элемента, а потом вставляю в поиск по проекту. Как правильно это делать то?
Аноним 06/03/23 Пнд 19:31:51 2631881 394
>>2631859
>>2631862
А задача то у тебя какая? Делать то что сказано?
Уровень аутизма и технологии и архитектура в проекте могут быть абсолютно разными.
Аноним 06/03/23 Пнд 21:45:17 2632023 395
Подскажите,читаю про авторизацию сейчас. Везде jwt токены используются? и реально третий сервер для приемки\отправки этого токена? Или как-то проще? и без заморочек?
Аноним 06/03/23 Пнд 21:55:28 2632035 396
>>2632023
Куда уж проще, даже пароли в базе не надо хранить.
Аноним 06/03/23 Пнд 22:36:40 2632076 397
1678131401280.png 17Кб, 512x194
512x194
1678131401280.png 20Кб, 576x213
576x213
1678131401280.png 28Кб, 574x279
574x279
1678131401280.png 19Кб, 612x181
612x181
>>2631168
>>2631221
Анон, я навесил. Он просто не отрабатывает ивент при ctrl+enter. Что делать?
Аноним 06/03/23 Пнд 22:40:20 2632077 398
>>2632076
Смысле не отрабатывает?
А кто тебе вон снизу в сосноль тогда пишет?
Аноним 06/03/23 Пнд 22:41:57 2632078 399
>>2632077
Ну давай видос запишу. Он отрабатывает только одиночные нажатия.
Аноним 06/03/23 Пнд 22:46:24 2632082 400
1678131983370.mp4 3776Кб, 1920x1080, 00:01:56
1920x1080
Одиночное нажатие: (ктрл)
Одиночное нажатие: (интер)
Комбинация ктрл + интер:
Аноним 06/03/23 Пнд 22:47:34 2632084 401
Аноним 07/03/23 Втр 07:45:18 2632269 402
>>2632084
Ну значит макака глушит остальные обработчик, если ловит ктрл+ентер.
Попробуй keyup штоле.
Аноним 07/03/23 Втр 08:02:58 2632279 403
16756043165570.mp4 3944Кб, 576x1024, 00:00:10
576x1024
Котаны, я не панимат тему классов
Сейчас пойду смотреть ролики по второму кругу, но всё равно тяжеловато.

Какое практическое значение они имеют? Какие новые возможности открывают классы, например?
В чём фундаментальное отличие классов от просто создания класса через const class = new Class (); ?

Спасибо за помощь
Аноним 07/03/23 Втр 08:13:02 2632285 404
Аноним 07/03/23 Втр 08:41:47 2632291 405
>>2632279

Чтобы ООП понять надо джаву изучать, или шарп.
Что рекомендую, кстати, хотя бы в базе.
Концепцию функционального программирования в джаве я начал более-менее понимать окольными путями именно через джаваскрипт, а весьма своеобразную джаваскриптовую логику в свою очередь - через ООП и строго-типовый подход Java и потом TS.
Аноним 07/03/23 Втр 09:27:50 2632304 406
>>2632291
Ну я ебал,если честно, возвращаться в Java
А вариант просто изучить TS не канает?
Аноним 07/03/23 Втр 09:40:22 2632307 407
>>2632304
>возвращаться в Java

Как-то хуево ты значит ее изучал, если в классах разобраться не можешь.
Аноним 07/03/23 Втр 10:08:25 2632317 408
>>2632279
Не звучит так, что ты знаешь что такое прототипы, зачем они нужны в JS и что такое ёбаное прототипное наследование.
Классы не убирают из JS прототипы, но работать с классами в разы приятнее, чем настраивать цепочки прототипного наследования и что-то там довешивать на прототипы.
>>2632304
TS не серебряная пуля, которая решает все проблемы JS. Статическкю типизацию добавляет - да, и это охуенно. Классы? Те же классы только ещё и модификаторы доступа и помимо наследования можно реализовывать типы/интерфейсы.
Аноним 07/03/23 Втр 10:34:46 2632329 409
>>2632307
Ну, поверхностно, скорее. Сама тема классов нетрудная (ну, наверное), просто яннп зачем такая сложность с кодом, если те же вещи можно сделать проще
>>2632317
Хм, интересненько. Я правда не знаю, что такое прототипное наследование, просто прохожу оффлайн курс, на котором мне вкидывают задачи. До этих пор всё было +- понятно, а теперь уже трабл
Аноним 07/03/23 Втр 13:01:51 2632480 410
>>2632269
Мне кажется это из-за того что текстареа внутри формы и сам браузер не дает. Мб попробую ещ5
Аноним 07/03/23 Втр 16:28:58 2632733 411
>>2632279
Класс это сахар над прототипами и конструкторами. Просто так писать удобнее и на жабу похоже, можно любителей ооп садить на жс писать, авось и не заметят.
Аноним 07/03/23 Втр 20:16:44 2633023 412
>>2632269
Да хуйня блять, ничего не выходит. Я не понимаю как это сделать. Мне нужно предотвратить дефолтное поведение на ктрл+ентер, чтобы он не отправлял запрос, поэтому я хочу отловить этот ивент и навесить свой. Чтобы я мог перед тем как пост отправится совершить манипуляции.
Аноним 07/03/23 Втр 22:11:01 2633124 413
>>2633023
У меня комбинации с ctrl нормально отрабатывают. Что ты имеешь в виду под "дефолтным поведением"? Попробуй просто ctrl отловить и сделать preventDefault, действия типы выделения будут игнориться, но ctrl enter по прежнему работать.
Аноним 07/03/23 Втр 22:14:24 2633131 414
1678216466395.png 9Кб, 458x149
458x149
1678216466401.png 24Кб, 560x187
560x187
>>2633124
Он отрабатывает ctrl но после него enter уже не отработает а запустит сабмит формы. Я пришёл к тому что тут дело в ивентах нажатия. Нужно работать с самой формой и конкретно ивентом "submit".

Я сейчас всё пытаюсь понять как мне сделать так, чтобы мой ивент отработался до остальных ивентов.
Аноним 07/03/23 Втр 22:14:55 2633132 415
>>2633131
>Я пришёл к тому что тут НЕ дело в ивентах нажатия.
Фикс.
Аноним 07/03/23 Втр 22:41:54 2633153 416
>>2633131
Тут submit может быть вообще никак не задействовано. Может и просто комбинация отлавливаться, по ней посылаться запрос, много вариантов.

>Я сейчас всё пытаюсь понять как мне сделать так, чтобы мой ивент отработался до остальных ивентов.

Хз, наверно такое и не сделать никак, твой листенер добавится после загрузки страницы, и stopPropagation уже не будет никак влиять. Перехватить базовый addEventListener опять же тоже не выйдет.
Аноним 07/03/23 Втр 22:48:00 2633157 417
1678218482855.png 6Кб, 291x105
291x105
>>2633153
Я уже выяснил что как раз в сабмите дело. Там навешен jQuery ивент который не останавливается обычным stopImmediatePropagation в addEventListener. Сейчас проблема в другом, он теперь ждёт выполнения моего хендлера (пик) но потом просто зависает намертво и не выполняет отправляет форму.
Аноним 07/03/23 Втр 23:06:59 2633165 418
image.png 4Кб, 484x86
484x86
Хочу написать js-консольное приложение, чтобы запускать его из ide добавил start скрипт (на пике). Проблема в том, что если запускать его просто как node . - то оно запускается сразу, а через npm run start или npm start - то оно перед запуском думает примерно 2 секунды. Как правильно запускать скрипт?
07/03/23 Втр 23:10:59 2633167 419
Подскажите пожалуйста, хочу написать парсер записи данных из сайта в режиме реального времени, какой стек технологии требуется изучить, подскажите пожалуйста, в каком направлении двигаться
Аноним 07/03/23 Втр 23:47:45 2633223 420
image.png 33Кб, 731x419
731x419
image.png 12Кб, 382x232
382x232
как это синхронизировать? надо чтобы блоб скачивался после того как сфетчатся картинки, иначе скачивается пустой тарбол. если что скачивание блоба сделано без промисов, а через таймаут. потому что куски кода спизжены из долскрипта
в отладке скачивается, если долго подождать, т.е. все работает надо только синхронизировать.
Аноним 08/03/23 Срд 00:30:24 2633268 421
>>2633223
возвращай из fetch_images массив промисов, на Promise.all добавляй then, в обработчике качай файл
Аноним 08/03/23 Срд 00:45:23 2633277 422
>>2633167
Простой парсер сможешь сделать на Питоне + библиотека requests и ещё может быть beautiful soup
Ещё есть Selenium
Аноним 08/03/23 Срд 00:58:23 2633288 423
>>2631154
Минимум сотку, да. Но это при условии, что хотя бы минимальные софт скиллы есть.
Аноним 08/03/23 Срд 01:16:25 2633303 424
1678227388312.png 1Кб, 97x80
97x80
>>2633157
Бля, только спустя 3 часа понял почему у меня происходят проблемы. Ивенты запускаются в том порядке, в котором были добавлены. Я все время думал что последний добавленный ивент (мой) будет запускаться первым.

Тогда я хуй знает как сделать так чтобы мой ивент запускался первым, пойду гуглить.
Аноним 08/03/23 Срд 01:48:48 2633313 425
1678229330768.png 9Кб, 435x144
435x144
1678229330770.png 10Кб, 436x108
436x108
1678229330770.png 153Кб, 480x560
480x560
1678229330771.png 3Кб, 130x62
130x62
>>2633303
Получилось. Как же я заебался.

Вешаю ивент в режиме захвата (capturing) на родительский элемент, чтобы он уж точно был первым. Отменяю дефолтное поведение чтобы не редиректило. Отменяю моментальный пропагейшен чтобы все ждали пока мой ивент завершится.

После этого, по какой-то причине, я всё ещё уходил в вечную загрузку (пик4). Не понимаю что мешало остальным ивентам отрабать как надо после моего. Но я вручную вызываю сабмит формы через jQuery чтобы все связанные ивенты с ней отработали ($(temp1).submit()).

Единственное что я не очень понял:
1. Почему мой ивент не отработался вслед за остальными ивентами, вызвал вечный цикл? Когда я вешал схожий ивент на саму форму, случался цикл, понятно почему. Неужели там отрабатываются только те ивенты которые непосредственно связанны с элементом (формой)?
2. Чем может быть вызвана вечная загрузка, из-за которой мне пришлось вручную сабмитить форму? Если мой ивент выполняется в режиме захвата перед всеми дочерними ивентами самой формы, по идее ничего не должно было помешать им отработать как надо? Единственная догадка так это то, что выше моего родительского элемента по ДОМу есть ивент, который также отрабатывается в режиме захвата. Этим может быть объяснено, почему я также вижу окно загрузки (пик4) в момент отработки моего ивента.
Аноним 08/03/23 Срд 01:50:54 2633314 426
>>2633313
>вслед за остальными ивентами, ВЫЗВАВ вечный цикл
Фикс.
Аноним 08/03/23 Срд 01:54:42 2633319 427
>>2633165
Его надо глобально установить и поебаться с package.json'ом. Ну у меня так было. Сделал небольшой скрипт, который создаёт структуру папок для nextJS приложения. И работает через командную строку.
"type": "module",
"main": "./bin/index.js",
"scripts": {
"start": "node index.js"
},
"bin": {
"next-struct": "./bin/index.js" // next-struct- ключевое слово для командной строки, как tsc у тайпскрипта
},

У меня так заработало.
Аноним 08/03/23 Срд 01:57:18 2633321 428
>>2621834 (OP)
Поясните разницу между broadcastchannel и shared worker
Аноним 08/03/23 Срд 02:39:16 2633324 429
>>2633313
Аноны, мне бы ОЧЕНЬ хотелось написать первый скрин из этого поста без использования jQuery. Но я перерыл весь гугл и не понимаю как. Все способы вызвать форму, будь то form,submit(), или form.dispatchEvent(new Event(''submit'')) редиректят на страницу с запросом. Может если я диспатчну ивент клика на кнопку реплая то такого не будет, но что-то мне подсказывает что тогда то я попаду в бесконечный цикл сабмита формы.
Аноним 08/03/23 Срд 02:49:42 2633326 430
>>2633167
Если сайт простой, то express + cheerio, если там SPA с защитой от парсеров, капчей, клаудфлэром и т.д., тогда тебе нужен headless browser типа puppeteer, который будет у тебя вместо cheerio, он будет притворяться реальным юзером, заходящим на сайт через хром. Сам делал стесловые краулеры на puppeteer, как вариант ещё можно подрубить доджинг банов по айпи через специальный сервис от AWS https://github.com/Ge0rg3/requests-ip-rotator
Аноним 08/03/23 Срд 02:57:52 2633330 431
>>2633319
У меня все работает, но когда запускаю через npm - оно одупляется две секунды, а через node - запускается моментально. Хотя в package json буквально эта же команда записана.
Аноним 08/03/23 Срд 03:20:35 2633338 432
Аноним 08/03/23 Срд 08:24:47 2633404 433
Антон 08/03/23 Срд 10:21:22 2633472 434
имел ввиду парсер криптовалют и связок как сделать, к примеру, парсер берет данные с разных сайтов и предлагает выгодный обмен(связок), купил на одной бирже, продал на другой? С чего начать, готов упорно учиться, даже если пойму что я чмо галимое, то лучше раньше, чем поздно.
Аноним 08/03/23 Срд 10:40:06 2633482 435
>>2633472
Подобная хуйня есть у букмекеров с вилками, они выявляют таких умников и банят.
Аноним 08/03/23 Срд 11:34:38 2633511 436
>>2633472
Ну вот на это можешь взглянуть:
https://www.youtube.com/watch?v=0MEpPU3rWCk

Если ты новичок, то вряд ли осилишь, но общее представление, думаю, можно получить.

Он там много чего рассказывает. Узнаешь про апи ключи и всё такое. Думаю, полезно будет.
Аноним 08/03/23 Срд 13:14:25 2633624 437
whyyyyyyyyyyyyy[...].jpeg 36Кб, 669x410
669x410
Кто-нибудь знает, почему функции объявленные через обычную декларацию помечаются в ИДЕ, как unused property (затемнены они)?
Я никак понять не могу. Это я чего-то не знаю, как оно работает, или это баг в ИДЕ
Аноним 08/03/23 Срд 13:28:48 2633633 438
не по теме
Помогите вытянуть отсюда url для фубара чтобы слушать радио не в браузере
https://rey.fm/
на всё что получалось пишет - нет прав
Аноним 08/03/23 Срд 13:38:12 2633638 439
>>2633324
<form method="POST"
Или как-то так, не помню
Аноним 08/03/23 Срд 13:39:45 2633640 440
Аноним 08/03/23 Срд 14:09:12 2633694 441
header.jpg 13Кб, 561x353
561x353
>>2633640
лан пох неважно, нашёл сайт который это делает.
Аноним 08/03/23 Срд 14:13:40 2633711 442
>>2621834 (OP)
Аноны, а javascript.info полностью покрывает темы по чистому JS, которые могут спрашивать на собесах?
Аноним 08/03/23 Срд 14:39:33 2633759 443
>>2633711
Смотря какие собесы. Последний раз когда заходил там дохуя всего было, для вкатуна за глаза.
Аноним 08/03/23 Срд 14:41:50 2633764 444
1678275710801.png 9Кб, 458x73
458x73
>>2633638
Не очень понял к чему это, у формы и так пост метод. И экшен указан, она редиректит по этому экшену.
Аноним 08/03/23 Срд 15:13:24 2633799 445
Читаю новую доку реакта: «While functional programming relies heavily on purity, at some point, somewhere, something has to change. That’s kind of the point of programming! These changes—updating the screen, starting an animation, changing the data—are called side effects. They’re things that happen “on the side”, not during rendering
Что здесь понимается под "рендерингом"? Фаза рендера, когда WIP файбер-дерева сравнивается с текущим? Или некоторое общее понятие?
Аноним 08/03/23 Срд 15:51:55 2633820 446
>>2633324
На onSubmit preventDefault, потом вручную фетчем постишь содержимое формы.
Аноним 08/03/23 Срд 16:07:31 2633829 447
>>2633820
Ладно, для двача это видимо не вариант ебаться, хочется просто препроцессинг перед отправкой сделать и потом дать уже навешанным ивентам отработать после моего, а не в обход них совершать постинг. Видимо лучше $(form).submit() нет.
Аноним 08/03/23 Срд 17:57:35 2633959 448
В 2к23 году реально ли вкатиться в какое-нибудь рога и копыта фронтендером? Если знаешь только js, vue и nuxt, но при этом нихуя не знаешь typescript, не знаешь ни ООП и ни ФП и ещё никогда не делал тесты?
Аноним 08/03/23 Срд 17:59:23 2633962 449
>>2633959
попробуй, узнаешь.
вкатиться можно и чисто версталой без жса.
смотря куда катиться будешь.
Аноним 08/03/23 Срд 18:02:18 2633965 450
>>2633962
Спасибо огромное за ответ.
>вкатиться можно и чисто версталой без жса.
А это как? Это под CMS'ки вёрстка шаблона?
Аноним 08/03/23 Срд 18:10:53 2633971 451
>>2633965
>шаблона
типо. но таких вакансий меньше чем на ангуляр из-за той же специфичности.

пробуйся на вакансии, записывай где ты проебался и изучай это.
проебываться ты будешь далеко не один раз.
Аноним 08/03/23 Срд 18:13:34 2633974 452
>>2633971
Благодарю, буду очень стараться
Аноним 08/03/23 Срд 21:58:56 2634225 453
какая-то проблема с промисами: всё норм скачивалось, пока не попался тред, в котором скачивание зависает на 2-х последних файлах (любых). в чем может быть проблема? как такое дебажить?
когда другим питоном грепал, то словил таймаут соединения. может надо рефетчить после такого, потому само это не происходит?
Аноним 08/03/23 Срд 22:00:09 2634228 454
>>2634225
>когда питоном скрапил, то словил таймаут соединения. может надо рефетчить после такого, потому что самостоятельно это не происходит?
Аноним 08/03/23 Срд 22:32:41 2634255 455
>>2633799
Под рендерингом понимается запуск функции-компонента. Она не должна менять стейт. Только функции могут его менять.
Антон 09/03/23 Чтв 02:08:06 2634362 456
Аноним 09/03/23 Чтв 02:51:27 2634368 457
Аноним 09/03/23 Чтв 03:15:43 2634373 458
Как же я ненавижу этот парашный язык, почему все реквесты на нём асинхронны? Я не хочу на каждый пук опрокидывать async/await на функцию чтобы дождаться жсона. КАКАЯ ЖЕ ХУЙНЯ.

Столько же костылей мне нужно для юзерскрипта. Почему блять просто нельзя соверашть синхронные запросы?
Аноним 09/03/23 Чтв 03:58:47 2634382 459
>>2634373
Ладно, я разобрался чуть с промисами и жизнь стала легче. Но всё равно такое себе. Вдруг если один промис задержится и у меня все наебнется.
Аноним 09/03/23 Чтв 04:07:42 2634383 460
Аноним 09/03/23 Чтв 05:32:33 2634400 461
>>2634373
Покажи в коде в чём именно проблема, как бы ты хотел чтобы оно работало?
09/03/23 Чтв 08:51:59 2634436 462
>>2634362
Подскажите как сделать в итоге эти связки, брать данные с сайтов парсить их, react node js sql подойдут?
Аноним 09/03/23 Чтв 10:53:57 2634491 463
>>2634436
какие связки. какие данные. шиз, учись нормально формулировать вопрос для начала.
Аноним 09/03/23 Чтв 11:00:44 2634494 464
Как валидировать данные формы через @Valid, чтобы оно бросало IllegalArguementException вместо BindException?
Аноним 09/03/23 Чтв 11:10:42 2634503 465
1678349443562.png 182Кб, 926x621
926x621
>>2634400
Там была типичная проблема 1 в 1 как на скрине. У меня класс разбит на методы, я создал небольшой метод чтобы получать жсон. Чтобы потом возвращать значение. Теперь мне приходится все тело метода оборачивать в промис и возвращать его, а в промисе резолвить значение финальное. И на самой верхушке прописывать then.
Аноним 09/03/23 Чтв 11:28:26 2634519 466
>>2634503
Перед названием метода просто пишешь async, не?
Аноним 09/03/23 Чтв 11:32:38 2634523 467
>>2634519
Тогда мне придется асинки проставлять вплоть до самого верха абстракции, это полная хуйня.
Аноним 09/03/23 Чтв 11:33:40 2634525 468
>>2634494
Либо ты пишешь что за фреймворк, либо я говорю что ты промахнулся трудом со своим спрингом.
Аноним 09/03/23 Чтв 11:36:24 2634526 469
>>2634523
Зачем? Один раз только, кроме самого метода. Указать асинк перед той функцией, где метод вызывается
Аноним 09/03/23 Чтв 11:36:33 2634527 470
>>2634525
Блять, как я вообще к вам попал...

Спиздили лет 30 назад имя на хайпе, теперь ошибаются люди в тредах...
Аноним 09/03/23 Чтв 11:39:44 2634530 471
>>2634526
А, асинхронные методы/функции я так понял по дефолту промис вовзращают и мне не нужно вручную их городить? Также then на самом верху возвращать? Ну, можно попробовать.
Аноним 09/03/23 Чтв 11:42:35 2634531 472
>>2634526
> Указать асинк перед той функцией, где метод вызывается
Или если ты про то чтобы использовать await то нет. Мне придётся указать для того метода который вызывает мой асинк ментод а затем для того метода который вызывает мой асинк метод который вызывает мой асинк метод, затем асинк для метода который вызывает остальные методы, затем асинк для мейн функции которая вызовет мой асинк метод который вызовет остальные асинк методы по цепочке.
Аноним 09/03/23 Чтв 11:48:01 2634534 473
>>2634531
Ты же понимаешь что писать await тебе нужно только если тебе внутри функции нужно дождаться выполнения другой функции?

Если у тебя есть скажем асинхронная fetchUpdates(), то ты можешь вызвать ее без await если тебе надо просто чтобы она вызвалась.

await нужен если ты делаешь что то с результатом функции
const res = await fetchUpdates()
doSomethingWithResult(res)

Если при всем при этом у тебя настолько длинная цепочка await-ов то ты как то не так код организуешь.
Аноним 09/03/23 Чтв 11:59:33 2634537 474
1678352374634.png 30Кб, 581x517
581x517
1678352374635.png 32Кб, 671x464
671x464
1678352374635.png 12Кб, 431x232
431x232
>>2634534
Ну у меня сейчас так выглядит. Я не очень уверен что понимаю как правильно сюда асинхронность прикрутить.
Аноним 09/03/23 Чтв 12:27:20 2634557 475
image.png 144Кб, 892x1160
892x1160
>>2634537
Нормально это примерно так пишется.
Аноним 09/03/23 Чтв 12:47:49 2634578 476
>>2634557
О, благодарю, что-то не подумал вынести таким образом fooBar. Ну в принципе, в теории не мне нужно обязательно ждать пока foo отработет, так что можно его не эвейтить, тогда будет работать также как и с промисами, только с меньшим говнокодом.
Аноним 09/03/23 Чтв 12:53:59 2634589 477
>>2634491
чуть выше был пример, если не вкуриваешь о чем речь, лучше промолчи дура
Аноним 09/03/23 Чтв 13:49:58 2634657 478
>>2634589
Вот никак не пойму таких токсичных неосиляторов.

Спрашивают хуй пойми что, а на логичный вопрос хули он хочет, начинает огрызаться и токсичить.

Ебанат, если ссылка на сайт для тебя - это верх пояснение вопроса, то пошел ты нахуй.

Ебанат, если ты не можешь разобраться какой стек тебе нужен для верстки - пошел на хуй.

Ебанат, чтобы ответить на твой вопрос я по твоему должен исследовать все возможные варианты которые ты имел в виду в своем вопросе дабы ты ответил потом: "Я не это имел в виду" - пошел на хуй.

Ну и просто пошел на хуй.
Аноним 09/03/23 Чтв 14:38:16 2634696 479
>>2634589
Ну так он промолчит, остальные промолчат.
Твой пост уже был красным флагом, а тут ещё и прямое подтверждение твой токсичной шизе:
> кукареку ку-дах тах-тах
Аноним 09/03/23 Чтв 14:45:54 2634700 480
15043759689731.png 641Кб, 750x748
750x748
>>2634696
>>2634657
Игроки на бирже/лудоманы, они такие. Сумбурное выражение мыслей, нервозность, импульсивность.
Аноним 09/03/23 Чтв 15:14:40 2634717 481
изображение.png 130Кб, 775x377
775x377
>>2634436
>связки
А, ну же очевидно как ее решить:

Mashinnoe_obuchenie_algoritmy_dlya_biznesa_2019_Markos_Lopez_de_Prado.pdf
Аноним 09/03/23 Чтв 15:18:13 2634719 482
>>2634657
Да это просто Быдло. Типочек. Пацанчик. Кент. Кабанчик. и тд.
Его мнение о вещах составлено из пацанской субкультурки.
Он считает что
- в интернете есть ответы на все вопросы.
- одни более ровные дяди скрывают "темки" от других дядей и вообще всяких лохов.

К сожалению, не все так примитивно.
Книжечка бесполезная, но все равно рекомендую к ознакомлению просто для кругозорчика.
Аноним 09/03/23 Чтв 15:35:33 2634734 483
Подскажите, как в эксперементальной версии некста (без getStaticProps и т.д) установить куку при первом запросе к приложению (который получает штмл цсс жс)?
Есть, кто ковырялся в этой версии?
Аноним 09/03/23 Чтв 15:40:30 2634739 484
>>2634734
Пока что только в миддлваре, потом запилят, написано в доке ж.
Аноним 09/03/23 Чтв 15:56:00 2634751 485
Дорогой дневник
>Пока что только в миддлваре

А как его подключать? Вот у меня есть handler который обрабатывает request resonse, который встанавливает куку. Куда мне вставить эту функцию (или файл с экспортом её) в структуре? Раньше в pages, а сейчас как? Или этот хэндлер - это не мидлвар? Или мидлвары по-другому подключаются?

Пока формулировал вопрос, решил посмотреть старую доку и нашёл ответ на вопрос. Надо чаще с собой общаться, задавать себе вопросы и т.д.
Аноним 09/03/23 Чтв 16:52:00 2634795 486
brent-intraday-[...].png 8Кб, 710x370
710x370
>>2634717
Так вот кто нам баблишко заносит! А я-то думал, кто ж эти уебаны, и всё никак не заканчиваются! А это машинное обучение - во как!

>algoritmy_dlya_biznesa

КИБЕРНЕТИКА!!!
Аноним 09/03/23 Чтв 17:50:30 2634854 487
Хочу оптимизировать размер json, сократив имена полей до 1-2 символов. На клиенте это легко обработать. А как работать с таким json в JavaScripte, чтобы не пришлось обращаться с полям с именем "i" или "a"?

Пока вижу вариант объявить класс с Get/Set и там внутри уже обращаться к нужному полю, типа:
get displayName() {
return this.data["dp"];
}
Аноним 09/03/23 Чтв 18:04:51 2634876 488
>>2634854
Тебя сжатие названия ключей даст выигрыш в пару мегабайт? Выглядит как экономия на списках ради оверхеда в вычислениях.
Аноним 09/03/23 Чтв 18:05:53 2634880 489
>>2634876
> экономия на спичках
быстрофикс
Аноним 09/03/23 Чтв 18:32:22 2634904 490
>>2634854
Если тебе нужно экономить, то жсон тебе не нужен, он неэффективен, кодируй по-другом, ключи храни статично.
А вообще просто напиши что-то типа
const readable = (optimiszed) => ( {abcd:optimized['a' ], efgh:optimized['e' ] })
Аноним 10/03/23 Птн 00:52:18 2635213 491
Реактеры здесь?
Взляните вот на это:
https://codesandbox.io/s/zealous-roman-sqcnre?file=/src/App.js

Есть лист с постами, у каждого поста есть меню. При открытии меню ВСЕ посты рендерятся заново.
Но нужно пере-рендеривать только 1 пост, который меняется.
Что тут можно сделать, кроме добавления состояния в каждый пост?

Всякие memo сюда не подходят, потому что или состояние меняется или пропсы меняются.
Аноним 10/03/23 Птн 01:39:50 2635247 492
Аноним 10/03/23 Птн 03:04:21 2635272 493
>>2635247
>дочерние компоненты внутри рендер функции нельзя
Што?
мимокрокодил
Аноним 10/03/23 Птн 10:09:01 2635431 494
>>2635272
Какое слово тебе не понятно?
Аноним 10/03/23 Птн 10:18:37 2635439 495
>>2635431
Ты какую-то хуйню спизданул. Что тогда делают паттерны render props или HOC? А для чего this.props.chldren. А как по твоему реакт роутер декларативно конфигурируется? Тысячи примеров

другой мимокрок
Аноним 10/03/23 Птн 10:46:01 2635473 496
>>2635439
Дебич, посмотри на пример кода в посте на который я ответил.
Аноним 10/03/23 Птн 11:17:02 2635513 497
Аноны, может мне сразу учить TypeScript и не тратить время на ванильный JavaScript? Он же всё равно транспилируется. Что скажете?
Аноним 10/03/23 Птн 11:19:16 2635520 498
>>2635513
Тайпскрипт это жабаскрипт, но с подписанными типами для статической проверки, всё что работает в одном, работает в другом, просто тайпскрипт может ругаться если ты хуйню пишешь.
Аноним 10/03/23 Птн 11:20:36 2635523 499
>>2635520
Да, я знаю. Но он же приучает к правильному мышлению с его типизацией. Насколько критично, если я сразу начну учить TS, пропустив JS? Всё же в некоторых моментах, кроме типизации он отличается, как я понял
Аноним 10/03/23 Птн 11:27:03 2635535 500
>>2635523
задай себе логичный вопрос, сможешь ли ты после тса просто взять и писать на жсе?

проще жс. потом тс. т.к. не везде используется тс.
Аноним 10/03/23 Птн 11:32:06 2635540 501
Етить оказывается резолв функцию промиса можно спрятать в массив и потом её выполнить, я хуею бля каждый день что-то новое узнаёшь
Аноним 10/03/23 Птн 11:33:04 2635542 502
правда, что v8 выполняет js код быстрее, чем выполняются большинство языков программирования, кроме асма, cи, плюсов и джавы? читал статью и там этот v8 так расхваливали, мол инженеры из гугл сделали чудо.
Аноним 10/03/23 Птн 11:48:22 2635552 503
React или Angular?
И почему
Аноним 10/03/23 Птн 11:50:07 2635556 504
>>2635552
рекат потому что много вакух и можно на тяп-ляп сделать что-то побыстрому.

ангуляр потому что меньше вакух, но аппы делают на нем большие и с правильным подходом к разработке.
Аноним 10/03/23 Птн 11:57:32 2635566 505
>>2635542
Чуда он не сделает. Если будешь писать js как будто это язык со строгой типизацией по правилам одна переменная - один тип плюс избегать слишком динамические фичи (вроде той же рефлексии), то код действительно будет на уровне. Но никто из жс-кодеров с этим не заморачивается, а потому получается что есть.
Аноним 10/03/23 Птн 11:57:47 2635567 506
>>2635556
А в каких сферах они чаще используются?

Я раньше думал, они слишком разные, но по сути там же нужны схожие знания
- глубокое знание JS
- TS
- Redux
- тестирование
В Angular еще есть RxJS и Observables, я пока не шарю за это, но в React это по-любому как-нибудь применяется.

Получается, лучше выучить один, потом другой, либо оба сразу? Или лучше сосредоточиться на чем-то одном?
Аноним 10/03/23 Птн 11:58:39 2635568 507
mpv-shot0005.jpg 113Кб, 942x720
942x720
>>2635247
Анонище, спасибище. На таких тред держится!

>И если что класть дочерние компоненты внутри рендер функции нельзя, это одна из грубейших ошибок в реакте.
А почитать про это можно чо-нить? Не могу чет найти ничего.
Аноним 10/03/23 Птн 12:03:39 2635578 508
Аноним 10/03/23 Птн 12:10:40 2635584 509
>>2635523
Транспилируется, а чтобы понять какие кейсы статика в ТС не покроет, надо навернуть говна сначала, чтобы понимать как оно работает и когда в рантайме твой транспилированный ЖЫЭС отвалится.
Ты не будешь постоянно проверять типы через typeof govnomocha - потому что это костылтная логика, выглядит с ифчиками уёбищно, JS [TS] всё равно норовит наебать с неявным преведением типов, да и пацаны засмеют и дизлайк на МР поставят, а потом на кухне отпиздят пока никто не видит.
Аноним 10/03/23 Птн 12:49:30 2635620 510
>>2635567
>А в каких сферах они чаще используются?
сайты, приложения на телефон и десктоп приложения.

для обезьяны они одинаковые. различия в разработки не такие уж и большие.

сосредоточиться на чем-то одном. остальные фреймворки после легче зайдут. т.к. почти то же самое.
например я с ангуляра на вью за вечер залетел, офк многого не знал, но для работы покурить доку и сделать тудушку хватило, чтобы разобраться как и что писать.
Аноним 10/03/23 Птн 12:50:37 2635623 511
>>2635620
>>А в каких сферах они чаще используются?
рякт чаще всего мелкие-средние сайты, но можно и тырпрайз (можно и на нативе тырпрайз, но оно вам надо?).
ангуляр чаще всего средние-большие и тырпрайз.
Аноним 10/03/23 Птн 12:55:11 2635628 512
>>2635623
а ентот тибетский вуе для кого тогда
Аноним 10/03/23 Птн 12:56:16 2635630 513
>>2635628
Если хочешь сделать сайт с топовым UX как на алиэксресс.
Аноним 10/03/23 Птн 12:57:04 2635631 514
>>2635628
та же хуйня что и с реактом но лично для моих глаз приятнее.
вакух меньше чем на рякт, но либо больше чем на ангуляр, либо меньше.
Аноним 10/03/23 Птн 13:08:27 2635648 515
>>2635552
Если начинать проект сейчас реакт, безальтернативно.
Аноним 10/03/23 Птн 14:02:44 2635703 516
>>2635431
>рендер функции
Так сказал бы в компонент, который рендерится. Я сразу подумал про return.
Аноним 10/03/23 Птн 14:04:54 2635708 517
Аноним 13/03/23 Пнд 12:21:11 2638771 518
>>2635648
Чтобы выбрать реакт или другую фейсбучную технологию, нужно быть гиперкомформым омежкой, для которого главное шоб как у всех. Реакт выбирают крестьяне, которые случайно вкатились в айти. Инженеры выбирают ангуляр или вуе. Даже китайский вуе внутренне намного технологичнее реакта. Реакт это библиотека для рендеринга jsx, разработчикам которой пох на производительность, главное чтобы было декларативненько, а то недавноиспеченые из крестьян хипстерки не оценят.
Аноним 28/03/23 Втр 02:47:33 2654845 519
>>2629266
Для этого и придумали отделение логики и представления. Я всегда начинаю с логики, пишу на логику тесты, натягиваю контроллеры и уже потом верстаю страницы. А то есть умники которые сверстали странички и типа довольны. Морда не нужна без функций. Плюс если ты начинаешь верстать с морды, у тебя возникает ложное впечатление будто ты умный, а на деле ты ничего не сделал. Это ведет к прокрастинации.
Аноним 28/03/23 Втр 02:48:32 2654846 520
>>2629415
Делаешь абстрактный класс Канселлабле и от него наследуешься. Потом вызываешь супер. Тогда весь повторяющийся код будет там что то делать перед твоим куском кода и не трогать твои функции.
Аноним 28/03/23 Втр 02:51:56 2654847 521
>>2629394
Если знать принципы гридов, когда юзать паддинг а когда маржин, твой пикрелейтед верстается примерно за 4 часа. Если ты знаешь все баги, клирфикс наизусть, то вообще за пару часов. Это при условии что ты не будешь гуглить как исправить какой-то мелкий баг например текст не идет на новую строку.
Аноним 28/03/23 Втр 02:53:46 2654848 522
>>2629450
Накидываешь/снимаешь класс вращения где анимация задана, в чем проблема? В реакте это делается одним стейтовым хуком.
Аноним 11/04/23 Втр 22:49:15 2669568 523
анончи, здравствуйте. Вопрос появился, изучаю реакт, но фп. Думаю, стоит ли переходить на ООП? или фп так же приоритетен?
Аноним 12/04/23 Срд 04:20:08 2669723 524
>>2669568
Ооп на фронте это оксюморон
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов