Сохранен 533
https://2ch.hk/pr/res/2345092.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

JS Thread #250 /js/

 Аноним 27/04/22 Срд 11:13:03 #1 №2345092 
16504515168180.png
Предыдущий тред: >>2339952 (OP)

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

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

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

Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
Аноним 27/04/22 Срд 11:19:39 #2 №2345096 
Что лучше использовать: классы с методами или просто функции экспортировать? (В случае с сервером на ноде, да и вообще)
Аноним 27/04/22 Срд 11:45:19 #3 №2345103 
каков принцип написания хуков и стейтов вручную(создать велосипед)
Аноним 27/04/22 Срд 11:48:44 #4 №2345104 
>>2345096
У сервера нет ДОМовских заёбов с контекстом методов, так что классы на ноде намного лучше заходят. Плюс версия ноды постояная в контексте кода, так что не надо ебаться с разношёрстной поддержкой классов между средами.
Классы надо использовать тогда, когда тебе нужно очевидные инстансы со своей логикой создавать. Симптом инстансов - когда у тебя функции в модуле пропукивают между собой референс на один и тот же объект и дёргают его поля. Это прямо каноничная сигнатура метода класса.
В принципе можно не заморачиваться с классами/фунциями и всё хуярить на процедурках, а модули конвертировать в классы только при появлении симптома.
Аноним 27/04/22 Срд 11:54:31 #5 №2345106 
>>2345103
>принцип написания хуков и стейтов вручную
Заключается в прочтении документации к реакту.
Аноним 27/04/22 Срд 12:21:19 #6 №2345120 
>>2345106
а без реакта
Аноним 27/04/22 Срд 12:41:10 #7 №2345135 
>>2345120
Там замыкания всякие, на гитхабе можешь посмотреть на реакт, там открытый код.
Вот ещё анон кидал, можешь ознакомиться
https://www.netlify.com/blog/2019/03/11/deep-dive-how-do-react-hooks-really-work/
Аноним 27/04/22 Срд 13:08:36 #8 №2345155 
1651054116331.png
Сап, аноны, на связи горе-вкатывальщик. Решил разобрать чужой код, и столкнулся с одной проблемой, при вызове факториал 10 получается 3628800, т.е. выполняется result * 9 хотя по условию i <= 10. Почему так?
Аноним 27/04/22 Срд 13:35:02 #9 №2345172 
>>2345104
Окей, пока не вижу необходимости делать классы, только если для красоты
Аноним 27/04/22 Срд 13:36:28 #10 №2345175 
>>2345155
Когда уже будет хвостовая рекурсия, чтобы форы эти ебаные совсем не писать???
Аноним 27/04/22 Срд 13:36:40 #11 №2345176 
image
>>2345155
Аноним 27/04/22 Срд 13:37:58 #12 №2345178 
>>2345176
Мне теперь стыдно, как пост удалить?
Аноним 27/04/22 Срд 13:51:15 #13 №2345189 
>>2345178
Завайпать тред, чтобы модер жмакнуть "удалить все посты"
Аноним 27/04/22 Срд 13:54:14 #14 №2345193 
>>2345155
освой дебаггинг
Аноним 27/04/22 Срд 14:02:00 #15 №2345198 
image
Кароче 4 гига оперативки не хватает на нормальное функционирование ютуба + вскода. Хотя мне винда и по 8 гигов выгружает. Хз на линуксе хватило бы или нет
Аноним 27/04/22 Срд 14:02:37 #16 №2345199 
>>2345198
Нормальное функционирование в том смысле, то intellisense практически не работает(
Аноним 27/04/22 Срд 14:16:08 #17 №2345215 
Сап. Подскажите плз дауну. Вот у меня есть список постов и на каждый пост можно ответить, типа как на двоще. Каждый пост - это компонент вьюжс. Сосотоит из поста и формы постинга, которая показывается, если переменная в этом компоненте тру. Переменная меняется при нажатии на кнопку ответить. Форма в каждом компоненте, потому что я хочу чтоб форма под постом показывалась. Но, как сделать так чтобы одновременно только одна форма была открыта? То есть, если я открываю форму в одном компоненте, то она закрывается в другом?
Аноним 27/04/22 Срд 14:27:59 #18 №2345226 
>>2345198
Хватает.
Аноним 27/04/22 Срд 14:28:53 #19 №2345227 
>>2345215
Хранить идентификатор поста, под которым октрыта форм отправки в вьюксе или родительском компоненте.
Аноним 27/04/22 Срд 14:29:14 #20 №2345228 
>>2345215
>Форма в каждом компоненте, потому что я хочу чтоб форма под постом показывалась

Вьюдауны еще не научились динамически менять локацию ноды.

Ахуительные истории короче. Им изобретали фреймворки, потому что ручками обновлять дом это слишком тяжело и большой риск допустить деоптимизации. По итогу они пихают по форме в каждый комментарий. Только выиграли.
Аноним 27/04/22 Срд 14:33:57 #21 №2345234 
>>2345226
а почему intellisense глючит?
Аноним 27/04/22 Срд 14:34:16 #22 №2345235 
>>2345228
>По итогу они пихают по форме в каждый комментарий. Только выиграли
А ты уверен, что там форма всегда рендерится, фуфел? Наверное, по твоему мнению через жиквару через строки вставлять намного удобнее
Аноним 27/04/22 Срд 14:37:15 #23 №2345237 
>>2345235
>Наверное, по твоему мнению через жиквару через строки вставлять намного удобнее
Вьюдаун не палится. На ванилле можно спокойно перекидывать любой элемент в доме, с сохранением референса на этот элемент.
Аноним 27/04/22 Срд 14:38:26 #24 №2345238 
image.png
>>2343047 →
Аноним 27/04/22 Срд 14:38:46 #25 №2345240 
>>2345228
Ну так она разве рендерится, если переменная не тру? Или я чет не понимаю? Я ещё планировал метод отправки формы этой в компоненте поста прописать. Это типа тоже выйдет, что я один и тот же метод n раз напишу? И так не надо делать? Но вроде логично типа.
>>2345227
А, ну попробую мб. Я прост думал, сделать чтоб компонент типа эмиттил в родительский компонент какую-то команду, чтоб все формы позакрывались у компонентов постов, но чет неосилил пока.
Аноним 27/04/22 Срд 14:39:44 #26 №2345243 
>>2345235
Через какие нахуй строки, долбоёб. Любитель innerHTML, ты? Узнал тебя по обдристанным штанишкам.

>А ты уверен, что там форма всегда рендерится,
Уверен. Иди и ты проверь, теперь.
Аноним 27/04/22 Срд 14:40:56 #27 №2345245 
>>2345240
>Ну так она разве рендерится, если переменная не тру?
Какая нахуй разница тру или не тру.
У тебя в каждом компоненте рендерится НОВАЯ форма. Новый дом узел. Каждый раз. На 100 комментариев ты создаешь 100 нод формы.
Аноним 27/04/22 Срд 14:41:32 #28 №2345246 
carbon.png
Сап, программисты.
Есть слайдер и к нему 2 инпута с именами from и to.
В инпуте можно менять значения, но нужно сделать валидацию через yup.
В принципе я сделал, но остаётся проблема в том, что у меня ошибка общая, а надо, чтобы она относилась именно к тому инпуту, где ошибка и произошла. Также юзаю formik со всем этим делом.
Код на пикче, функция validate вызывается на onBlur инпута.
Я вообще хуй знает как это сделать.
Аноним 27/04/22 Срд 14:47:51 #29 №2345248 
>>2345245
Ну так и чё я не понимаю? Что значит "новая"? Я нажимаю на кнопку, появляется элемент с формой. Не нажимаю - не появляется. Чем эта форма будет отличаться от той, что будет динамически вставлена? Один хрен одновременно на странице будет одна форма (ну если я сейчас пофикшу это).
Когда кнопка не нажата в верстке показывается <--v-if--> вместо элемента формы, то есть её же нет типа.
Аноним 27/04/22 Срд 14:53:06 #30 №2345250 
image.png
>>2345248
Ты не понимаешь разницы между двумя разными объектами?

Понимаешь в чем разница между двумя массивами на пике?
Аноним 27/04/22 Срд 15:11:04 #31 №2345261 
>>2345250
Ну я вообще жс не изучал особо, прост сайтик свой делаю. Я не понимаю, в чем разница между теми штуками у тебя на пике. Но лан, подумаю, как сделать чтоб одна форма была.
Прост мне показалось логичным что всё, что связано с этим компонентом, будет внутри этого компонента. У меня же каждый комментарий это как отдельный блог типа (не как на даче, а типа как в ВК там или на Ютубе)
Аноним 27/04/22 Срд 15:21:23 #32 №2345268 
image.png
Кто-нибудь делал такой календарь? Хотел через ант взять, но в анте месяца без дней, либо дни только для одного месяца
Аноним 27/04/22 Срд 15:24:06 #33 №2345272 
>>2345237
Что, если ему потом понадобится менять динамически контент этого элемента в зависимости от условий? Императивно у каждого элемента менять пропы? Хватит дурачком прикидываться.

>>2345237
>Через какие нахуй строки, долбоёб
Через которые ты контент на странице меняешь, попущ.
>Уверен. Иди и ты проверь, теперь.
Ты обосрался, долбоебина. Не рендрится от слова совсем, ни в реакте, ни во вью, ни в ангуляре
Аноним 27/04/22 Срд 15:25:32 #34 №2345275 
>>2345261
Ты после того как пообедаешь посуду всю выбрасываешь, а перед новой трапезой новую покупаешь? Это же по твоему логично должно быть - еда же каждый раз новая. Нет разве?
Аноним 27/04/22 Срд 15:26:32 #35 №2345276 
>>2345245
>На 100 комментариев ты создаешь 100 нод формы.
Ты говна навернул, иди гитхаб открой и посмотри как рендеринг во вью работает, хватит срать в штанишки.
>>2345250
А ты не понимаешь разницы между вставкой/перемещением элемента в дереве и заменой уже существующего, веб макака?
Аноним 27/04/22 Срд 15:32:11 #36 №2345279 
>>2345272
>Что, если ему потом понадобится менять динамически контент этого элемента в зависимости от условий? Императивно у каждого элемента менять пропы? Хватит дурачком прикидываться.
Если бы да кабы. У этих плавающих форм очень слабая привязка к каким-либо элементам в списке, в который они засовываются. А уж в контексте имиджборды связки вообще нет, так как даже ответы - всего-лишь строчные ссылки. Так что хуй знает про какие пропы ты тут затираешь.
Аноним 27/04/22 Срд 15:36:56 #37 №2345280 
>>2345276
Ты тупоё добоёб.
Ни вью, ни реакт, ни ангуляр не перемещают форму по дереву.
Они создатут сто форм на сто комментариев. И будут тебе их показывать и скрывать. Но это будут сто разных блядь форм. Ты понимаешь это или нет?
Аноним 27/04/22 Срд 15:38:17 #38 №2345282 
>>2345272
>Ты обосрался, долбоебина
Пиздуй сравнивать рефы на ноды, шизоид.
Аноним 27/04/22 Срд 15:42:53 #39 №2345285 
>>2345280
Так а что в этом плохого?
Аноним 27/04/22 Срд 15:45:27 #40 №2345290 
>>2345285
Ахуительно, блядь.

Ну например то, что это требует в 100 раз больше памяити и в сто раз больше вычислений.

Что в этом плохого? Хуй знает, что плохого в том, что вы постоянно сеуете, што браузеры вам всю оперативку выжирают и тормозят.
Аноним 27/04/22 Срд 15:48:44 #41 №2345292 
>>2345290
Ну то есть я правильно понимаю, что если ты пишешь у какого-то элемента v-if, то этот элемент энивей есть, просто не показывается? Даже если в коде страницы его нет, то он где-то там сидит и занимет память? Я рил не знаю.
Аноним 27/04/22 Срд 15:51:59 #42 №2345296 
>>2345292
Если он не занимает там где-то память (не закеширован), после того как был отрендерен хотя бы раз, то все еще хуже. Ты будешь создавать форму заново КАЖДЫЙ раз. С тем же успехом можешь заново ререндерить всю страницу на каждое движение мыши, что в этом плохого?
Аноним 27/04/22 Срд 15:57:22 #43 №2345298 
>>2345296
Ну прям там одно поле с кнопкой дохуя памяти занимают? Просто ты говоришь, как я понимаю, что даже если кнопка ответа не нажата, то вью энивей для каждого поста займет память для формы? Ну типа думаю не страшно новую форму нарисовать каждый раз, когда ты отвечаешь на пост. Но если он рисует форму для вообще всех постов на странице, на которые ты и не собирался отвечать, то тогда да, не очень наверное.
Аноним 27/04/22 Срд 15:58:57 #44 №2345299 
>>2345198
А что ты хотел от двух одновременно запущенных браузеров.
Аноним 27/04/22 Срд 16:00:45 #45 №2345302 
>>2345280
>Они создатут сто форм на сто комментариев.
Они создают 100 форм только если ты написал в коде, что надо создать 100 форм. Если ты напишешь создать одну форму к активной карточке поста, то он создаст одну форму.
Аноним 27/04/22 Срд 16:01:14 #46 №2345303 
Что такое CJS и ESM?
Аноним 27/04/22 Срд 16:02:25 #47 №2345305 
>>2345303
Стандарты модулей. Официальным является esm до сих пор поддерживается не везде
Аноним 27/04/22 Срд 16:02:55 #48 №2345306 
>>2345268
Ни у кого идей нет?
Аноним 27/04/22 Срд 16:03:22 #49 №2345307 
>>2345268
Ну я делал, в чем запрос идеи то?
Аноним 27/04/22 Срд 16:04:06 #50 №2345310 
>>2345302
Еще раз. Пиздуй и сравни рефы на дом-ноды формы у разных постов. Это разные ноды.
Аноним 27/04/22 Срд 16:05:33 #51 №2345314 
>>2345310
ты спизданул про создание 100 разных форм для каждого поста, а не сравнение двух разных нод, попущ. Иди перечитай свои посты.
Аноним 27/04/22 Срд 16:05:34 #52 №2345315 
>>2345298
Ну да. Тут одно поле - ничего стращного. Там тоже одна кнопка - ничего страшного. А вон там тоже всего ничего подумаешь.

Ты понимаешь что из такх мелочей блядь все и складывается? Никто не садится писать ГОВЕННЫЙ ТОРМОЗЯЩИЙ И ЖРУЩИЙ ПАЯТЬ код намеренно.
Аноним 27/04/22 Срд 16:06:40 #53 №2345316 
>>2345307
Ну типа как делать без анта, сам написал?
Аноним 27/04/22 Срд 16:06:46 #54 №2345317 
>>2345303
Несовместимые сорта модулей ноды.
Аноним 27/04/22 Срд 16:06:51 #55 №2345318 
>>2345314
100 форм для 100 постов. А не 100 форм для каждого поста. ты ебешься в глаза. Читай внимательно долбоёб >>2345245
>>2345280
Аноним 27/04/22 Срд 16:08:18 #56 №2345320 
>>2345268
>>2345307

Я могу взять конечно 12 месяцовых антовских календарей, но как-то это не очень звучит
Аноним 27/04/22 Срд 16:12:04 #57 №2345322 
Чем HTTPS server отлич от HTTP/2?
Аноним 27/04/22 Срд 16:13:07 #58 №2345324 
>>2345298
Можешь посмотреть на Хабр. Он делает именно то же, что ты - создает новую форму для каждого поста.

Хабр правда очень шустрый сайт, не так ли?
Аноним 27/04/22 Срд 16:15:14 #59 №2345325 
>>2345324
для каждого комментария*
Аноним 27/04/22 Срд 16:21:55 #60 №2345328 
чёт я не понимаю, а если рендерить компонент формы при клике на пост, то о каких формах для каждого поста идёт речь?
Аноним 27/04/22 Срд 16:29:23 #61 №2345331 
Ух епта, ну я сделал, оно работает! Ну конечно наверное не круто.

Я сделал как мне тут один анон советовал: в родительском компоненте есть переменная commentingPostId, которая передается в каждый компонент поста. В компоненте поста сравнивается id поста с переданным commentingPostId, если совпадает, то показывается форма. При нажатии на кнопку ответить, срабатывает метод, который эмитит id поста. В родительском элементе при эмите срабатывает метод, который устанавливает commentingPostId на тот id, который ему заэмитил компонент.
Аноним 27/04/22 Срд 16:33:25 #62 №2345332 
>>2345328
В том, что это костыльное подобие плавающей формы. Тащемта её можно "по-настоящему" реализовать и во фреймворках, но для этого придётся создавать свою систему оверлея или пихать императивный код с рефами в компонент. С отдельным стором кстати намного проще, так как императивщину можно спрятать за тханком и реф хранить в полуглобальном состоянии.
Аноним 27/04/22 Срд 16:35:09 #63 №2345333 
Как много магии под капотом Vue, как разобраться как это внутри работает, и нужно ли?
Аноним 27/04/22 Срд 16:51:47 #64 №2345340 
>>2345324
>Хабр правда очень шустрый сайт, не так ли?
Как будто из-за того, что он создает эту форму он так лагает.
Аноним 27/04/22 Срд 16:52:36 #65 №2345342 
>>2345331
Молодец. В будущем используй для этого vuex или его аналоги.
Аноним 27/04/22 Срд 16:57:28 #66 №2345347 
>>2345342
Не ну я знаю, что это такое, просто подумал, что наверное не круто хранить типа в общем хранилище информацию, относящуюся только к одной странице. Или норм? наверное да, надо было так сделать, лел.
Аноним 27/04/22 Срд 17:07:17 #67 №2345351 
>>2345347
Ты прав. Вьюкс не очень хорошо подходит, а вот vue-query вполне.
Аноним 27/04/22 Срд 17:11:22 #68 №2345353 
подскажите пожалуйста
есть массив ['a', 'ab', 'abc', 'babc']
в нем требуется для строки 'abcd' найти элемент, который больше всего входит в указанную строку с начала строки ('abc')
как это сделать?
Аноним 27/04/22 Срд 17:17:21 #69 №2345354 
>>2345353
>как это сделать?
Прочитать оппост.
>Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю».
Аноним 27/04/22 Срд 17:18:28 #70 №2345356 
image.png
>>2345353
Аноним 27/04/22 Срд 17:19:13 #71 №2345358 
>>2345268
бамп
Аноним 27/04/22 Срд 17:21:08 #72 №2345360 
image.png
>>2345353
Аноним 27/04/22 Срд 18:53:10 #73 №2345412 
>>2345356
>>2345360
неправильно, в задаче написано "больше всего входит", т.е. нельзя тупо проверять на 'abc', нужно все подстроки перебрать.
Аноним 27/04/22 Срд 19:14:37 #74 №2345436 
>>2345412
Он все и перебирает, долбоеб.
Аноним 27/04/22 Срд 21:15:02 #75 №2345526 
Вы прикиньте, див оказывается по дефолту инлайн элемент, а браузеры ему задаёт дисплей блок
вааау
Аноним 27/04/22 Срд 21:40:18 #76 №2345543 
Screenshot20220427-213956Chrome.jpg
>>2345526
Хуйни-то не неси, долбоеб. https://html.spec.whatwg.org/multipage/rendering.html#flow-content-3
Аноним 27/04/22 Срд 22:04:51 #77 №2345563 
image.png
>>2345543
Так. ну этот чел на видосе говорит обратное. Если дисплей инишл выставить, то выдаст именно инлайновым. Или получается у дисплея по дефолту инишл это инлайн, и дисплей всё в инлайн пытается перевести? ясн
https://youtu.be/N8tFrMZp_wA?t=114
Аноним 27/04/22 Срд 22:11:03 #78 №2345569 
Я если честно не понимаю, если у дисплея по дефолту всё инлайновое, тогда что говорит диву быть по дефолту дисплей блок? Разве это не бразуер задаёт настройки?
Аноним 27/04/22 Срд 22:20:19 #79 №2345579 
image.png
image.png
ну да, браузерная надстройка в общем.
Аноним 27/04/22 Срд 22:49:09 #80 №2345596 
ШОК!!! ДИВ ВСЕГДА БЫЛ ИНЛАЙНОВЫМ, А БРАУЗЕРНЫЕ ВЕНДОРЫ ЭТО СКРЫВАЛИ ДЕСЯТИЛЕТИЯМИ!
Аноним 27/04/22 Срд 22:54:14 #81 №2345603 
Screenshot20220427-225300Chrome.jpg
>>2345563
Когда собираешься подрасти и вместо того чтобы ретранслировать то, что ты не понял, начать читать документацию, долбоеб?

Чел ему глворил. Пиздец.
Аноним 27/04/22 Срд 22:55:08 #82 №2345604 
>>2345603
Получается я был прав
Аноним 27/04/22 Срд 22:56:35 #83 №2345606 
>>2345596
Так верстали наши шизопредки
Аноним 28/04/22 Чтв 02:15:54 #84 №2345677 
Есть форма

<form action="<?php echo $_SERVER["PHP_SELF"] ?>" class="" method="post" id="my_form" name="my_form" method="post">

в ней инпуты где вводишь текст

И есть кнопка сабмит
<button type="submit" class="button" button id="button">Submit</button>

Данные Array показываются прям на этой же странице (можно на другой, не суть важно). Т.е. у меня над <!DOCTYPE html> висит

<?php
print_r($_POST);
?>
Так вот, нужно чтобы по нажатию кнопки форма не сразу отправлялась (срабатывала) а например 7 секунд задержка была. Уже пробую 10 метод со стаковерфлов и ничего не срабатывает.
Как можно сделать задержку?
Аноним 28/04/22 Чтв 02:16:42 #85 №2345680 
>>2345677
Не знаю важно или нет, на XAMPPE щас проверяю.
Аноним 28/04/22 Чтв 02:33:28 #86 №2345685 
>>2345677
<button type="button" onclick="send"></button>

<script>
const send = () =>
setTimeout(() => {
const form = document.getElementById("form");
const fd = new FormData(form);
fetch("/<твой экшн>", { method: "post", body: fd });
}, 7_000);
</script>


дадада мне похуй на onclick, глобальное пространство и прочую хуйню. Один хуй эта пыхамакака не в состоянии написать нормальный жс
Аноним 28/04/22 Чтв 02:40:21 #87 №2345687 
>>2345677
Второй вариант, еще легче:
<button type="button" onclick="send"></button>
<script>
const send = () =>
setTimeout(() => {
document.getElementById("my_form").submit();
}, 7_000);
</script>
Аноним 28/04/22 Чтв 02:53:06 #88 №2345691 
>>2345677
><?php
>print_r($_POST);
>?>
Ебало представили?
https://ru.wikipedia.org/wiki/Межсайтовый_скриптинг
Аноним 28/04/22 Чтв 02:54:45 #89 №2345692 
>>2345685
>>2345687
попробовал - нихрена. Вот вся моя форма простейшая

<?php
print_r($_POST);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>test_post</title>
</head>
<body>
<form action="<?php echo $_SERVER["PHP_SELF"] ?>" method="post">
<label for="first">First Name :</label>
<input type="text" id="first" name="first">
<label for="last">Last Name :</label>
<input type="text" id="last" name="last">
<button type="submit">Submit using POST</button>
</body>
</html>

На ней попробовал решение 6-10 из стаковер - не работаеют. Кнопки подставляю как у них в примерах. У тебя в примерах тоже даже твои айдишники подставлял. Наверное я рукожоп какой-то и в упор чего-то не вижу.
Аноним 28/04/22 Чтв 02:55:31 #90 №2345693 
>>2345691
я это видел, я для себя делаю поэтому вообще все равно на защиту.
Аноним 28/04/22 Чтв 02:56:36 #91 №2345694 
>>2345692
>Кнопки подставляю как у них в примерах. У тебя в примерах тоже даже твои айдишники подставлял. Наверное я рукожоп какой-то и в упор чего-то не вижу.
это что такое?
>type="submit"
Аноним 28/04/22 Чтв 02:58:50 #92 №2345696 
>>2345692
> У тебя в примерах тоже даже твои айдишники подставлял. Наверное я рукожоп какой-то и в упор чего-то не вижу.
Ну так кидай полностью весь код, что ты подставил.
мимо
Аноним 28/04/22 Чтв 02:59:27 #93 №2345697 
>>2345692
Олсо, ты </form> потерял
Аноним 28/04/22 Чтв 03:12:15 #94 №2345701 
>>2345696
вот пожалуйста, подставил второй вариант анона.

<?php
print_r($_POST);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>test_post</title>

<script>
const send = () =>
setTimeout(() => {
document.getElementById("my_form").submit();
}, 7_000);
</script>

</head>
<body>
<form action="<?php echo $_SERVER["PHP_SELF"] ?>" method="post" id="my_form">
<label for="first">First Name :</label>
<input type="text" id="first" name="first">
<label for="last">Last Name :</label>
<input type="text" id="last" name="last">
<button type="button" onclick="send"></button>
</form>
</body>
</html>

>>2345697
спасибо
Аноним 28/04/22 Чтв 03:14:50 #95 №2345702 
>>2345701
В консоли браузера что? Во вкладке network? При клике на кнопку.
Аноним 28/04/22 Чтв 03:18:14 #96 №2345703 
>>2345701
>onclick="send"
onclick="send()"
Аноним 28/04/22 Чтв 03:18:57 #97 №2345704 
>>2345702
посмотрел, и там и там ничего не происходит.
Аноним 28/04/22 Чтв 03:19:27 #98 №2345706 
>>2345704
>>2345703
Аноним 28/04/22 Чтв 03:21:38 #99 №2345707 
>>2345703
заработало! Огромное тебе спасибо ночной анон >>2345687 и тебе тоже
Аноним 28/04/22 Чтв 03:23:19 #100 №2345708 
>>2345707
Не за что. Формы говно, если что. Если хочешь в фуллстек учи сразу подход AJAX, а именно как работает метод fetch.
Аноним 28/04/22 Чтв 11:59:28 #101 №2345819 
>>2345155
< 10(до 9)
<= 10 (до 10)
Аноним 28/04/22 Чтв 12:43:45 #102 №2345853 
image.png
>>2345092 (OP)
Так в чём актуальность замыкания в 2022? Нахуй это на собесах спрашивают? Что бы что? Что бы узнать понимает ли человек, что лет в скобочках не видно за скобочками? Так спрашивали бы сразу про области видимости. Или я чего-то не понимаю?
Аноним 28/04/22 Чтв 12:58:55 #103 №2345864 
>>2345853
это вопрос уровня актуальность понимания if else в джаваскрипте
Аноним 28/04/22 Чтв 13:03:24 #104 №2345867 
>>2345819
мне снова стыдно, не надо.
Аноним 28/04/22 Чтв 13:15:54 #105 №2345874 
>>2345864
Замыкание никто не использует.
Аноним 28/04/22 Чтв 13:33:37 #106 №2345901 
>>2345874
Ты блять когда импортируешь модуль используешь замыкание.
Аноним 28/04/22 Чтв 13:39:56 #107 №2345906 
>>2345853
В рякте хуки это чистопородные замыкания.
Аноним 28/04/22 Чтв 13:46:54 #108 №2345910 
Каждый собес спрашивают про тесты, но я за последнии 2 года их ниразу не писал, просто потому что никто на это бюджет не выделяет. При этом отдел тестирования постоянно перегружен и не успевает.
Аноним 28/04/22 Чтв 13:48:38 #109 №2345912 
>>2345853
потому что в жс кроме замыканий и прототипов нихуя нет
Аноним 28/04/22 Чтв 13:53:46 #110 №2345916 
>>2345526
по какому дефолту, в спеке написано, что блочный, значит браузер так его и должен отображать и прописывает это в дефолтных стилях. То что у пропсы значение inline не значит ничего.
Аноним 28/04/22 Чтв 13:54:53 #111 №2345918 
Capture2.PNG
Capture1.PNG
Есть один стейт, который я хочу поменять в глубоко вложенном дочернем компоненте через юсеконтекст.

Как мне это сделать?
Выдает ошибку

Warning: Cannot update a component (`Home`) while rendering a different component (`ListItem`). To locate the bad setState() call inside `ListItem`

Аноним 28/04/22 Чтв 13:57:36 #112 №2345922 
>>2345918
Бля...
Пересмотрел свой же код
()=>Delete(listItem) надо было
Вопрос закрыт
Аноним 28/04/22 Чтв 14:10:40 #113 №2345933 
>>2345910
Так это чистый ритуализм. Считай TDD - коммунизм позднего совка. Никто в него не верит и не практикует, но если ты не хочешь быть изгоем-опущем, то ты должен говорить о важности тестов и какое же заебатое это TDD. Да и кабанчикам в принципе похуй на тесты, им проще загонять разработчиков на сверхурочные после деплоя в пятницу через раз, чем продлевать и усложнять процесс всей разработ очки.
Аноним 28/04/22 Чтв 14:14:36 #114 №2345941 
Какие значения лучше использовать для сброса переменных?
Читал, что строки лучше сбрасывать в "" а не null, потому что v8 там лучше работает и не пакует\распаковывает значения туда-сюда.
А что делать с массивами, объектами и другими типами?
Аноним 28/04/22 Чтв 14:17:51 #115 №2345942 
>>2345941
Какой нахуй сброс значений?
Аноним 28/04/22 Чтв 14:28:40 #116 №2345948 
>>2345942
Ну типо у тебя есть какая-то формочка с строками, чекбоксами и т.д. и кнопка очистить форму, какие значения полей лучше выставлять после клика на очистку формы?
Аноним 28/04/22 Чтв 14:43:26 #117 №2345956 
>>2345948
Какой клик на очистку формы? При успешном сабмите вызываешь HTMLFormElement.reset() и не ебёшь мозг.
Аноним 28/04/22 Чтв 15:05:48 #118 №2345972 
>>2345956
Да много где есть на инпутах крестик для быстрой очистки, или на группе чекбоксов "снять все".
Аноним 28/04/22 Чтв 15:33:57 #119 №2345986 
Есть ряд элементов. Нужно проверить, что у какого-либо из них есть нужный класс.
Нашёл все элементы через querySelectorAll и превртил результат в массив. После попробовал это:

console.log(days.some(e => {e.classList.contains('-range-from-')}))

Не работает, выдаёт false
Однако код:

days.forEach(e => {
console.log(e.classList.contains('-range-from-'))
});

Работает и говорит о наличии нужного элемента.
Почему так?
Аноним 28/04/22 Чтв 15:40:37 #120 №2345988 
>>2345986
e => {e.classList.contains('-range-from-')}
у тебя ф-ция не возвращает значение
Аноним 28/04/22 Чтв 15:42:42 #121 №2345990 
>>2345988
Ха, точно. Теперь работает. Спасибо.
Аноним 28/04/22 Чтв 16:27:35 #122 №2346015 
mysql в командной строке не работает, в shell работает. чзх
Аноним 28/04/22 Чтв 16:28:45 #123 №2346016 
>>2346015
В какой командной строке?
Аноним 28/04/22 Чтв 16:32:48 #124 №2346019 
По долгу службы пришлось вкатиться в жс после Джавы. Пиздос, динамически типизированные языки - полное говнище. Как вы на нем пишете вообще?
Аноним 28/04/22 Чтв 16:40:41 #125 №2346026 
>>2346019
Ну тупоскрипте пишем
Аноним 28/04/22 Чтв 17:05:57 #126 №2346061 
>>2346019
Берёшь и пишешь. Я после шарпа js за неделю выучил. Джависты совсем тупенькие?
Аноним 28/04/22 Чтв 17:26:05 #127 №2346086 
>>2346019
Просто пишу в названии каждой переменной её тип. Проблемс?
Аноним 28/04/22 Чтв 18:53:07 #128 №2346153 
Что дает использование реакта?
Аноним 28/04/22 Чтв 19:01:26 #129 №2346162 
>>2346016
windows 10 powershell, в прогу mysql заходит, а команды не выполняет ну либо я туплю
Аноним 28/04/22 Чтв 19:44:03 #130 №2346192 
>>2346153
Даёт пиздюлей
Аноним 28/04/22 Чтв 19:45:15 #131 №2346194 
>>2346192
я серьезно.
как реакт улучшит изготовление мной велосипедов?
Аноним 28/04/22 Чтв 20:19:23 #132 №2346222 
>>2346194
Велосипеды можно писать быстрее.
Аноним 28/04/22 Чтв 21:19:58 #133 №2346252 
>>2345941
Лля каждого типа использвать в качестве пустого значения тот же тип.

Незаполненый массив это пустой массив.
Аноним 28/04/22 Чтв 21:24:41 #134 №2346255 
>>2346222
на ванильном жс?
Но тогда зачем реакт?
Аноним 28/04/22 Чтв 21:34:01 #135 №2346260 
>>2346194
Будут готовые запчасти к велосипедам.
Аноним 28/04/22 Чтв 21:35:44 #136 №2346262 
>>2346260
можно пример готовой запчасти,вместо изготовления своей запчасти
Аноним 28/04/22 Чтв 21:56:24 #137 №2346269 
>>2346086
То что ты тупой не проблема.
Аноним 28/04/22 Чтв 22:08:42 #138 №2346271 
>>2346262
Ты свои эти метафоры и аллегории оставь для других мест
Аноним 28/04/22 Чтв 22:24:43 #139 №2346280 
Привет, подкиньте пожалуйста интересных вопросов на Frontend интервью, что-то аналогичное следующим:
- Как реализовать "тёмную тему" на выбранном фреймворке (Angular, React, Vue).
- Как отследить открытие веб-приложения в новой вкладке и автоматически запретить выполнение кода в предыдущей.
- Как отправлять HTTP запрос не на каждый key stroke, а только через N миллисекунд после ввода последнего символа.
Аноним 28/04/22 Чтв 22:30:25 #140 №2346289 
>>2346262
https://github.com/brillout/awesome-react-components
Аноним 28/04/22 Чтв 22:39:08 #141 №2346298 
>>2346289
много кода
Аноним 28/04/22 Чтв 22:40:03 #142 №2346300 
>>2346280
>- Как реализовать "тёмную тему" на выбранном фреймворке (Angular, React, Vue).
Реализуется без фреймворка в современном CSS.
Аноним 28/04/22 Чтв 22:41:00 #143 №2346301 
>>2346300
через setattribute?
Аноним 28/04/22 Чтв 22:54:06 #144 №2346310 
>>2346300
>Реализуется без фреймворка в современном CSS.
шо.
хочешь сказать можно просто взять и на все разделы сменить тему каким-то там цсс?
Аноним 28/04/22 Чтв 22:59:48 #145 №2346313 
>>2346301
"Добавляет новый атрибут или изменяет значение существующего атрибута у выбранного элемента."
так toggle же всегда для тем использовался.
во-вторых, как ты отслеживаешь другие разделы сайта?
Аноним 28/04/22 Чтв 23:05:32 #146 №2346316 
>>2346310
Да, через media query prefers-color-scheme, например.
Аноним 28/04/22 Чтв 23:15:47 #147 №2346322 
>>2346310
Нет конечно же, нужно ставить фреймворк и пару говнолиб для этого.
Аноним 28/04/22 Чтв 23:19:23 #148 №2346323 
>>2346322
Привет, добавь лучше интересный вопрос в мой список, пиздобол.
Аноним 28/04/22 Чтв 23:23:44 #149 №2346325 
Vue после реакта как глоток свежего воздуха, никогда больше не притронусь к этому говну
Аноним 28/04/22 Чтв 23:25:23 #150 №2346326 
>>2346325
Подожди, а как же декларативность, как же то что можно легко перенести проект под мобилки, виар.
вью так может?

мимо вкатун, возможно через неделю первая работа будет
Аноним 28/04/22 Чтв 23:48:25 #151 №2346331 
>>2346323
Пока, всем похуй на твой список. Тред обсуждения языка программирования не будет тебе помогать отсеивать вкатышей.
Аноним 29/04/22 Птн 01:41:38 #152 №2346358 
>>2346280
Контекст
Page Visibility API
Debouncing
Аноним 29/04/22 Птн 03:54:11 #153 №2346369 
что по event loop посоветуете посмотреть?
Аноним 29/04/22 Птн 04:42:03 #154 №2346373 
>>2346255
Что ты там собрался ан ваниальном жс быстрее писать, долбоёб?
Иди нахуй с такими вопросами вообще.
Аноним 29/04/22 Птн 07:51:45 #155 №2346402 
>>2346369
Паттерн "реактор"
Аноним 29/04/22 Птн 10:27:37 #156 №2346477 
Как нпм заставить видеть глобально установленные пакеты? У меня сетап на 10м шиндошсе, в котором я сижу под пользовательской учёткой, а консоль запускаю из под рута (сервер иначе не запускается). Поставил недавно ярн и мне консоль возращает `bash: yarn: command no found`.
Аноним 29/04/22 Птн 10:58:53 #157 №2346495 
>>2346477
возможно поможет прописать path для yarn
Аноним 29/04/22 Птн 11:04:10 #158 №2346498 
>>2346495
Так у ярна там модная установка через корпак, его нпм тоже не видит. Это не с ярном проблема, а нпм в моём конкретном сетапе.
Аноним 29/04/22 Птн 11:04:32 #159 №2346499 
Зайки. Выбирал выбирал язык программирования. выбрал js и фронт. Но фронт мне не нраица. Сложно потом будет на бек перейти или вообще в геймдев, мобильную разработку уйти?
Аноним 29/04/22 Птн 11:06:01 #160 №2346500 
>>2346499
Сложно, а все что ты выучишь там будет и нахуй не нужно
Аноним 29/04/22 Птн 11:15:11 #161 №2346502 
>>2346495
Ну и дичь, пришлось добавить временную папку в пути. Шиндошс-стайл солюшнс.
Аноним 29/04/22 Птн 12:16:14 #162 №2346555 
>>2346499
Хосспаде, почему вкатуны такие долбоебы? Начинай с Паскаля и Си, потом будет похуй что разрабатывать
Аноним 29/04/22 Птн 12:37:50 #163 №2346572 
>>2346555
потому что не знают нихуя в вопросе. это как с ребенка 2 летнего в ахуе быть, почему он не понимает таблицу умножения
Аноним 29/04/22 Птн 12:43:27 #164 №2346576 
Какой должен быть процент поддержки браузерами для типовых сайтов на рынке? Например для интернет магазина. 90% сойдет?
Аноним 29/04/22 Птн 12:47:35 #165 №2346577 
Блин, эт че, придётся разные класснеймы использовать для стилей компонентов?
мээээх
импортнул один компонент, стили наложились на другой
Аноним 29/04/22 Птн 12:54:48 #166 №2346584 
>>2346576
Так бабель всё равно сделает нужный процент, а его настройки от желаний бизнеса зависят, какая разница?
Аноним 29/04/22 Птн 14:22:22 #167 №2346630 
Мне нужна поддержка старого говна, типо ie и там полифилов подтягивается слишком много. Хочу 2 версии клиента собрать и подключать по необходимости.

Как в одном конфиге вебпака сделать так, что бы генерировалась 2 бандла с разными настройками бабеля?
Или придется 2 разных конфига делать и по очереди выполнять?
Аноним 29/04/22 Птн 14:53:17 #168 №2346657 
>>2346630
Создай отдельный энтрипонит для говна, обмазанного полифилами и пихай его с аттрибутом nomodule в страницу. А основной бандл с type="module". Но там нужно больше пердолиться, скорее всего два конфига собирать придётся, так как нужно будет транспилировать слишком свежее говно в node_modules тоже.
Тут есть общее описание, как это реализовывать:
https://philipwalton.com/articles/deploying-es2015-code-in-production-today/
Это очень старый гайд, так что не рекомендую ему следовать буквально. Плюс все плагины для вебпака, которые якобы могли это дело автоматизировать, не обновлялись года 2 минимум.
Аноним 29/04/22 Птн 15:05:55 #169 №2346667 
>>2346584
А бабель мне гарантирует что весь код точно будет переведен на старый стандарт? Например, как он реализует динамический импорт?
Аноним 29/04/22 Птн 16:58:58 #170 №2346741 
>>2346577
css modules
Аноним 29/04/22 Птн 17:05:42 #171 №2346746 
>>2346667
>А бабель мне гарантирует что весь код точно будет переведен на старый стандарт?
Нет.
>как он реализует динамический импорт?
Никак. Динамический импорт реализуется средствами вебпака или вита. Диинамический импорт нестандартных зависимостей (напр. css) реализуется через соответствующий лоадер и/или плагин.
Аноним 29/04/22 Птн 17:06:52 #172 №2346749 
>>2346667
>как он реализует динамический импорт?
Через добавление <script src> на страницу и навешивание на события load и error resolve и reject параметры промиса. Можно поменять, если есть необходимость.
Аноним 29/04/22 Птн 17:10:56 #173 №2346758 
>>2346630
>Как в одном конфиге вебпака сделать так, что бы генерировалась 2 бандла с разными настройками бабеля?
>Или придется 2 разных конфига делать и по очереди выполнять?
this.
//webpack.config.js
module.exports = [config1, config2]
Аноним 29/04/22 Птн 17:30:29 #174 №2346773 
>>2346746
>Динамический импорт реализуется средствами вебпака
Чиво?
Аноним 29/04/22 Птн 17:32:20 #175 №2346774 
image.png
image.png
image.png
image.png
>>2346741
Так у меня разные цсс модули. у меня 2 разные цсс модуля и они не импортят друг у друга. там где я их вызываю по всей видимости вызываются 2 вот этих цсс модуля ( так как прописаны импорты в модуле компонентов)
В общем надо просто следить за наименованиями.
Аноним 29/04/22 Птн 17:44:31 #176 №2346784 
image.png
>>2346773
Таво. Читать не умеешь?
>>2346774
Это не css модули, ты глобально css импортируешь.
Аноним 29/04/22 Птн 17:46:01 #177 №2346785 
>>2346774
Дебил, ты их импортируешь в скоуп модуля сайд эффектом, пиздуй читать инструкцию, как работать с css-модулями.
Аноним 29/04/22 Птн 17:54:06 #178 №2346799 
>>2346773
Вкатун осознает, что у вебпака есть еще рантайм на клиенте. Спешите видеть!
Аноним 29/04/22 Птн 18:37:23 #179 №2346827 
>>2346799
ты че бредишь, сука? Какой рантайм вебпак на клиенте?
То что он тебе сгенерировал код по подгрузке модуля не значит, что он у тебя вебкап работает в рантайме.
Аноним 29/04/22 Птн 18:37:25 #180 №2346828 
Привет, А почему в Реакте нету инкапсуляции стилей? А когда в реакте появится HTML шаблонизатор?
Аноним 29/04/22 Птн 18:41:33 #181 №2346833 
>>2346827
Какой-то вялый тролинг он выдал
Аноним 29/04/22 Птн 18:47:19 #182 №2346844 
>>2346828
Вуедаун не палится.
Аноним 29/04/22 Птн 18:48:17 #183 №2346847 
>>2346827
>>2346833
Долбебы, вот >>2346784 анон скрин кидал.
Аноним 29/04/22 Птн 18:49:54 #184 №2346850 
>>2346844
А как насчёт того, что инкапсуляция стилей и нормальный шаблонизатор есть в Angular, Vue, Svelte, а в React нет? Что ты скажешь по этому поводу? А? А? А?
Аноним 29/04/22 Птн 18:49:56 #185 №2346851 
>>2346828
>А почему в Реакте нету инкапсуляции стилей?
Ну поставь scoped jsx, будет тебе инкапсуляция как в вуе.
>А когда в реакте появится HTML шаблонизатор?
Как только вуй сможет в нативное мобильное прилоежние
Аноним 29/04/22 Птн 18:51:12 #186 №2346853 
>>2346499
А зачем выбрал, если не нравится... Да, бек сложнее, но там не такой разброс по технологиям, несколько актуальных стеков, общие алгоритмы, СУБД, со знаниями которых можно потом переехать хоть в блокчейн. Смысл учить фронт и переучиваться на бек, если можно сразу бек?
Аноним 29/04/22 Птн 18:51:39 #187 №2346854 
>>2346850
Отвечу, что вышеописанные фремворки могут работать только в браузере/на ноде, а реакт не только.
Аноним 29/04/22 Птн 19:01:44 #188 №2346867 
>>2346827
>То что он тебе сгенерировал код по подгрузке модуля не значит, что он у тебя вебкап работает в рантайме.
>То, что ты вставил код реакта в бандл не означает, что у тебя реакт работает в рантайме
Сам понял что высрал?
Аноним 29/04/22 Птн 19:05:50 #189 №2346873 
>>2346850
>инкапсуляция стилей
В чём отличе от css-модулей?
>нормальный шаблонизатор
Дефайн "нормальный". Из нормальных шаблонизаторов на память приходит только pug, так как это единственный шаблонизатор, который упрощает чтение хтмл простыней, а не усложняет. Но он как бы умир, да и работал тольно на нодовских серверах.
Аноним 29/04/22 Птн 19:09:20 #190 №2346876 
>>2346827
>Какой рантайм вебпак на клиенте?
Вот этот?
https://github.com/webpack/webpack/tree/main/lib/runtime
Аноним 29/04/22 Птн 19:10:22 #191 №2346879 
Тихо охуеват от количества бойлерплейта в этом вашем реакте

Блеа, мне надо было всего-то в стор добавить один слайс с ебаным массивом, так для этого пришлось редачить четыре-пять файлов...
Аноним 29/04/22 Птн 19:20:35 #192 №2346893 
>>2346879
Причём здесь реакт? Это типичный бойлерплейт редукса.
Аноним 29/04/22 Птн 19:21:06 #193 №2346895 
>>2346879
>охуеват от количества бойлерплейта в этом вашем реакте
>Блеа, мне надо было всего-то в стор добавить
В реакте нет стора, ты видимо что-то перепутал.
Аноним 29/04/22 Птн 19:55:10 #194 №2346948 
>>2346876
И что по твоему это значит?
Где ты видишь место, где вебпак добавляет в твой бандл подгрузку своих библиотек, а не тех, которые ты сам указал при сборке как динамические модули?
Аноним 29/04/22 Птн 19:58:36 #195 №2346953 
>>2346867
Уже напился, придурок? Разницу между импортом библиотеки и генерацией скрипта по загрузке библиотеки не видишь?
Аноним 29/04/22 Птн 19:59:02 #196 №2346954 
>>2346827
Код пожгрузки модулей это и есть RTE, мань.

Мимо.
Аноним 29/04/22 Птн 19:59:55 #197 №2346957 
если я не до конца понимаю о чём идёт речь про вебпак, то я плохой джун?
Аноним 29/04/22 Птн 20:03:42 #198 №2346960 
Смарите кароче, я не остановился на реакте. А немного подрочил ноду на уровне рест апи + сейчас секвалайз. Что писать в резюме, что я фулстак джун?
Аноним 29/04/22 Птн 20:07:36 #199 №2346963 
>>2346954
Че такое rte? Типо реал тайм экзекушн? Конечно да, но причем тут "у вебпака есть еще рантайм на клиенте"?
Аноним 29/04/22 Птн 20:13:06 #200 №2346970 
>>2346960
если хочешь чтобы тебя дрочили вопросами по БД и sql, и скорее всего, задачками по алгоритмам - пиши фулстак.
Аноним 29/04/22 Птн 20:22:55 #201 №2346976 
>>2346970
Блять т.е. я зря на пол-шишечки вкатился в это? Что за дизморалька?
Аноним 29/04/22 Птн 20:54:00 #202 №2346987 
Бляя, TMDB в России больше не работает! Я потратил целый месяц на написание своего пет-проектика на основе апи оттуда и теперь всё коту под хвост.
Аноним 29/04/22 Птн 21:00:20 #203 №2346992 
>>2346987
как восстанавливаться будешь после такого?
Аноним 29/04/22 Птн 21:05:36 #204 №2346996 
image.png
>>2346948
Долбоеб, вон выше я скрин кидал. Очки купи.
>>2346953
Отличие импорта от того, что ты называешь "генерацией" поясни
Аноним 29/04/22 Птн 21:14:58 #205 №2347003 
>>2346957
Ты даже не джун
Аноним 29/04/22 Птн 22:34:29 #206 №2347056 
>>2346987
Закажи на фрилансе разработку простейшего сервера, отдающего данные в нужном формате. Или сделай сам, лол
Аноним 29/04/22 Птн 22:56:30 #207 №2347074 
image.png
В каких случаях this.props могут быть не равны props из функции обновления setState?
Аноним 29/04/22 Птн 23:14:22 #208 №2347092 
>>2347074
props.setState(this.props.counter + 1)
props.setState(this.props.counter + 1)
<Parent><Children setState={this.setState} counter={counter} /></Parent>

Аноним 29/04/22 Птн 23:15:31 #209 №2347093 
>>2347092
Инстанс Parent это this, на 4 строке общее древо компонентов.
Аноним 30/04/22 Суб 06:52:10 #210 №2347177 
>>2346963
RTE - это Runtime Environment. Именно то, что и называется пантаймом когда под рантаймом подразумевают "что" а не "когда"
Например, окружение браузера и ноды и апи которые они предосиавляют - это рантайм.
Рантацм это то, без чего твой код не работает.

У вебпака тоже есть рантайм, который он встраивает в твой код.
Аноним 30/04/22 Суб 16:34:22 #211 №2347416 
>>2346976
Чел, бэкенд это гигантская сфера, по сравнению в которой фрон - это баловство в песочнице. То, что ты поднял сервачок на ноде, сделал строчку в базе или аутентификацию по ютуб ролику не делант тнбя бэком даже близко.
Аноним 30/04/22 Суб 17:44:14 #212 №2347458 
>>2347416
А если интернет магазин сделал с поиском вещей?
Аноним 30/04/22 Суб 18:57:56 #213 №2347502 
>>2347458
2FA, рассылки, интеграция с 1c, отчетики, инвентаризация? rps скока?
Аноним 30/04/22 Суб 19:07:25 #214 №2347509 
>>2347502
ебать чувак ты думаешь я ради пет проекта так заморачиваться буду? а rps вообще от меня зависит или от хостинга?
Аноним 30/04/22 Суб 19:24:45 #215 №2347517 
>>2346960
>фулстак джун
Это словосочетание само по себе уже стало мемом. Пиши, что реакто-макака, но есть немного опыта с нодой.

>>2346970
>дрочили вопросами по БД и sql, и скорее всего, задачками по алгоритмам

Так-то это база, и каждый уважающий себя веб-программист должен это знать.
Аноним 30/04/22 Суб 19:45:12 #216 №2347530 
>>2347517
>Это словосочетание само по себе уже стало мемом. Пиши, что реакто-макака, но есть немного опыта с нодой.
Ладно спасибо. Просто вот мне показалось как-то тупо пользоваться файрбесом вместо бека, поэтому заинтересовал вопрос. Надеюсь, не зря
Аноним 30/04/22 Суб 21:32:07 #217 №2347640 
>>2347530
>Просто вот мне показалось как-то тупо пользоваться файрбесом вместо бека, поэтому заинтересовал вопрос.
Каждый инструмент под свою задачу. Иногда чистый фронт без базы это ОК, иногда в качестве бэкэнда хватит какого-то firebase/DynamoDB на AWS, а иногда нужен нетфликс из сотни слабосвязанных горизонтально масштабируемых сервисов.
Аноним 30/04/22 Суб 22:33:33 #218 №2347682 
>>2347509
>а rps вообще от меня зависит или от хостинга?
И от того и от другого. На небольших проектов мало кто будет заморачиваться с оптимизацией, скорее всего просто закинут ядер и гигабайтов оперативы на хост, а вот на больших, когда подобное закидывание будет стоить овердохуя денег отдается больший приоритет оптимизациям.
Аноним 01/05/22 Вск 02:05:50 #219 №2347791 
>>2347530
Однозначно не зря. Небольшое понимание бэка очень полезно, и стоит указать это в резюме. Вполне возможно, что ты попадёшь в команду, где придётся немного писать на ноде. Просто это ещё не делает тебя фуллстеком.

Чисто по своему опыту, я бы порекомендовал сфокусироваться пока на фронте, и когда будешь чувствовать себя уверенно (и это будет подкрепленно твоими успехами в реальным проектах), начинать смотреть в сторону бэка.
Аноним 01/05/22 Вск 03:14:49 #220 №2347796 
Бутстрап для рачил?
Пишу тут аппликуху на реакте, но вёрстку не знаю. Писал тупо на дефолтных хтмл контролах без css.
Накатил бутстрап, с полтычка сразу все заебись красиво стало, можно даже людям показывать.
Бутстрап помогает делать фронт тем, кто настолько тупой, что не может верстать сам, типа как я.
Или же это норм тема и его используют в коммерческих SPA?
Аноним 01/05/22 Вск 11:49:17 #221 №2347883 
Вы в работе вообще используете классы?
Чет за 2 года фронта на реакте ниразу их не видел в проектах, все в сагах ебашат логику и все. Максимум там что-то общее в отдельную функцию выносят.
Аноним 01/05/22 Вск 11:52:04 #222 №2347885 
>>2347796
Используют, но свою тему или компоненты пишут на основе бутстрапа\материал.
Аноним 01/05/22 Вск 12:55:01 #223 №2347932 
>>2347796
Бутстрап обычно для повышенной скорости верстки приделывают.
Сейчас намного чаще в ходу Material UI, Ant Design и Chakra UI
Аноним 01/05/22 Вск 13:06:03 #224 №2347944 
>>2347883
>Вы в работе вообще используете классы?
yes
>Чет за 2 года фронта на реакте ниразу их не видел в проектах, все в сагах ебашат логику и все. Максимум там что-то общее в отдельную функцию выносят.
Если твое понятие классов за 2 года работы ограничилось только классовыми компонентами в реакте, то у меня для тебя плохие нвоости
Аноним 01/05/22 Вск 13:37:36 #225 №2347963 
>>2347944
Ну так и есть, только классовые компоненты тоже нигде не используются уже. Работаю в банке.
Какие у тебя проекты?
Аноним 01/05/22 Вск 15:05:25 #226 №2348011 
>>2347963
Это ты типа выебнуться решил или чё? Работаю в IT отделе росгвардии, так тчо можешь свой ебанк засунуть куда подальше.
Аноним 01/05/22 Вск 15:10:47 #227 №2348016 
>>2348011
Пролапс, ты?
Аноним 01/05/22 Вск 15:24:56 #228 №2348026 
>>2348011
Причем тут выебнуться. Хочу узнать на каких проектах есть потребность писать свои классы, потому что у меня это не используется.
Аноним 01/05/22 Вск 15:38:32 #229 №2348029 
>>2348026
Да в каких угодно, ебать.
Работаю в Макдоналдсе.
Аноним 01/05/22 Вск 15:42:54 #230 №2348033 
>>2348026
>Хочу узнать на каких проектах есть потребность писать свои классы, потому что у меня это не используется.
В банк по блату вкатился?
Аноним 01/05/22 Вск 17:13:26 #231 №2348087 
>>2347963
>классовые компоненты тоже нигде не используются уже
Ты скозал? ErrorBoundary как первое, что пришло в голову. Кстати, а ты знал, что js это не обязательно реакт? Например, ты можешь ты можешь свои компоненты создать на ванильном жс через классы и только через них. И, учитывая твои высеры, они будут работать быстрее чем твой говнокод с сотнями ререндеров на реакте.
>Работаю в банке.
>Какие у тебя проекты?
А я работаю в телекоме на что это вообще влияет? Очевидно, что ты в своем банке только формы шлепал никак не разиваясь.
Аноним 01/05/22 Вск 22:52:29 #232 №2348252 
Screenshot20220501224821.png
Это вообще законно?
Аноним 01/05/22 Вск 23:51:44 #233 №2348279 
>>2348029
Ставлю тебе класс.
Аноним 02/05/22 Пнд 02:39:31 #234 №2348356 
>>2348252
Ты импортируешь css файл как js.
Аноним 02/05/22 Пнд 10:12:44 #235 №2348424 
>>2348252
Используй божественный tailwind и css-purge
Аноним 02/05/22 Пнд 12:50:21 #236 №2348492 
Обработчики событий внутри обработчика событий нормальная практика?
Аноним 02/05/22 Пнд 12:58:44 #237 №2348502 
>>2348492
Конечно, это даже основа фукци анального программирования.
Аноним 02/05/22 Пнд 13:05:53 #238 №2348508 
image.png
image.png
image.png
>>2345092 (OP)
Аноны, которые работают или считают у них довольно чистый код, подскажите советом.

Пишу сайт для лаборатории. Сделал отдельный компонент для шаблонных текстов ( это где сверху заголовок, внизу паста, мой 3 пик) и туда подавать в пропсы текст. Но это получается мне придется засирать текстом мой главный компонент App.
Плюс, надо как-то весь текст распарсить. В данном случае тогда лучше избежать компонентного подхода?
Аноним 02/05/22 Пнд 13:08:10 #239 №2348509 
>>2348508
Хотя я тут подумал, можно для каждого текста свой компонент создать, где там текст уже будет оформленный и его погружать в темплейт. Вроде норм идея?
Аноним 02/05/22 Пнд 13:19:28 #240 №2348514 
>>2348508
>Сделал отдельный компонент для шаблонных текстов ( это где сверху заголовок, внизу паста, мой 3 пик) и туда подавать в пропсы текст. Но это получается мне придется засирать текстом мой главный компонент App.
Что ты блять несешь? Откуда у тебя этот текст вообще берётся?
Аноним 02/05/22 Пнд 13:21:49 #241 №2348515 
>>2348514
>то ты блять несешь? Откуда у тебя этот текст вообще берётся?
Наверное неправильно выразился, не шаблонный текст, а они в одном стиле все оформлены, оранжевая шапка с заголовком, внизу текст на бежевом фоне, как на моём 3 пике.
Текст я переписываю с 1 и 2 пиков
Аноним 02/05/22 Пнд 13:36:41 #242 №2348525 
>>2348515
Куда ты его переписываешь? Создавай компонент, получающий текст для заголовка и children в пропсах. Потом для каждой страницы создавай компонент, который заполняет шаблонный компонент, и экспортируй его. App у тебя будет эти компоненты пропукивать через роутер, на передавай никакх пропсов в них.
Аноним 02/05/22 Пнд 14:02:56 #243 №2348537 
Как переключаться между неймспейсами в socket io? У них в доках написано, что вот так:
let odin = io.of("/odin")
let dva = io.of("/dva")
И потом можно
odin.on(...)
dva.on(...)
Но по факту оно пишет, что у io нет метода of. Его реально там нет, я проверял. И как быть нахуй? Мне с нуля новую инстанцию сокета делать, под каждый неймспейс?
Аноним 02/05/22 Пнд 14:13:39 #244 №2348543 
>>2348537
Речь о том, как мне на клиенте получить доступ к разным неймспейсам, если что.
Аноним 02/05/22 Пнд 14:18:12 #245 №2348547 
Пишу бекенд (блог). Хочу попробовать реакт, правильно ли я понимаю, что реакт это обязательно будет SPA? Просто я думаю для блога SPA это лишняя хуйня. Тогда его нужно с чем то комбинировать
Аноним 02/05/22 Пнд 14:50:50 #246 №2348568 
>>2348547
Реакт необязательно SPA, но свой серверный рендер реактокомпонентов тебе придётся пердолить самому, особенно если сервачок не на ноде. Или добавь в своей стэк сервачок на NextJS, там как раз хелловорлдный блог в примерах.
Ну или свяжись со мной в телеге https://t.me/gabengar могу я фронт попердолить.
Аноним 02/05/22 Пнд 15:02:51 #247 №2348575 
>>2348568
Спасибо, да это не коммерция, я как бы учусь и делаю типа пет-проект. Бек у меня на Django. Читал, что можно базовый шаблон можно отдавать через бек сервер, собирая фронт вебпаком.
Но мне хочется сделать как 2 независимых приложения. Хз,правильно ли это. Но то что я понял, поверхностно пробежавшись по тутору реакта - это что он заточен под SPA. Думаю он для блога нахуй не нужен. Например страницу логина, профиля хотелось бы отдельно грузить.
Поможет ли мне здесь NextJS + React router dom?
Аноним 02/05/22 Пнд 15:12:01 #248 №2348578 
>>2348575
>Но то что я понял, поверхностно пробежавшись по тутору реакта - это что он заточен под SPA. Думаю он для блога нахуй не нужен.
"Заточен" он может и под SPA, но его пихают и в одностраничники.
>Поможет ли мне здесь NextJS + React router dom?
Некстжс - отдельный сервер, со всеми вытекающими. Его киллерфича - он может билдить статику с данных из БД, а если у тебя совсем хайлоад - то делать это инкрементно в рантайме.
Аноним 02/05/22 Пнд 15:30:41 #249 №2348599 
Сколько же в жиэс всякого тулинга, пиздец просто...
Тулинг в пхп: менеджер пакетов composer.
Тулинг в жс: менеджер пакетов npm (и ещё несколько), надстройка над языком typescript, бандлеры, препроцессоры css, минификаторы js и css, вырезатели неиспользуемых js и css, полифилы для js, hot-reload сервера и ещё 100500 видов хуйни.
Аноним 02/05/22 Пнд 15:32:20 #250 №2348600 
>>2348508
О, моя шарага
Аноним 02/05/22 Пнд 15:33:18 #251 №2348601 
>>2348599
Ты забыл упомянуть 10 шаблонизаторов у пыхи. Каждый новый - более лучше предыдущего.
Аноним 02/05/22 Пнд 15:34:47 #252 №2348603 
>>2348515
> Текст я переписываю
Куда, прямо в жиэс файл?

Текст должен храниться в базе данных на сервере, компонент получает информацию с сервера, дёргая апишку.
Аноним 02/05/22 Пнд 15:37:58 #253 №2348606 
>>2348601
> 10 шаблонизаторов у пыхи
Да это дерьмо для рачил. Все нормальные люди используют сам php как шаблонизатор, что делается в каждом популярном фреймворке.
Я уж молчу про то, что уже де-факто сервер давно ничего кроме жсонов не выдает и никакие шаблонизаторы там нахуй не нужны.
Аноним 02/05/22 Пнд 16:01:13 #254 №2348629 
>>2348515
> Текст я переписываю с 1 и 2 пиков
Какую задачу тебе вообще поставили?
>>2348508
> Пишу сайт для лаборатории
Что значит "сайт"? Его будут использовать как средство публикации новых статей? Или ты просто переписываешь содержание стенгазеты в статические страницы?
В первом случае требуется нормальная БД, где будут храниться тексты в каком-либо одинаковом формате и админка с авторизацией.
Во втором - просто переписываешь текст с бумажки в статические страницы, раз уж интерактивности не будет. В таком случае текст будет прямо в хтмл потому что с вероятностью 99% никто этот "сайт" больше никогда трогать не будет
Аноним 02/05/22 Пнд 16:03:07 #255 №2348633 
>>2348543
Блядь лол, так и join нету. Вообще нихуя нету, половины функционала нет нахуй. А что случилось-то блять? Это я ебанутый и нихуя не понимаю, или у них действительно все переделано/отвалилось нахуй?
Кто-нибудь может прямо сейчас проверить, работает ли клиентская часть socket.io? Просто две строчки кода.
Аноним 02/05/22 Пнд 16:11:09 #256 №2348638 
>>2348633
Так, с неймспейсами разобрался, действительно все переделано, как будто до этого хуево работало. Как join то теперь делать, нихуя не понятно.
Аноним 02/05/22 Пнд 16:29:05 #257 №2348659 
>>2348638
Ай ладно все я разобрался. Просто охуенно каловая документация, которая путает пользователя. Надо было не тратить время на чтение этого говна, а сразу api смотреть.
Аноним 02/05/22 Пнд 16:59:12 #258 №2348698 
1.png
Как из коллбэка вернуть что-нибудь в глобальное пространство?

Делаю запрос в бд, но результат застрял внутри колбэка, консоль логом выводится нормально только внутри колбека, ретёрн возвращает КУДА ОН БЛЯДЬ ВОЗВРАЩАЕТ

извините
Аноним 02/05/22 Пнд 16:59:55 #259 №2348700 
>>2348606
>Я уж молчу про то, что уже де-факто сервер давно ничего кроме жсонов не выдает
Ну да, серваки сгрузили мозгоёбскую работу по превращению контекста запроса в хтмл, и внезапно большая часть проблем с тулингом отпала. Но виноват конечно же оверенжинеред фронт.
Аноним 02/05/22 Пнд 17:37:54 #260 №2348728 
>>2348698
> Как из коллбэка вернуть что-нибудь в глобальное пространство?
Promise
> КУДА ОН БЛЯДЬ ВОЗВРАЩАЕТ
В коллбек. С вероятностью 99% потребителю коллбека абсолютно похуй че ты там в нем возвращаешь. Его дело лишь вызвать твой коллбек и передать в него результат.
Аноним 02/05/22 Пнд 17:38:02 #261 №2348729 
>>2348698
util.promisify + async/await
или new Promise + await
Аноним 02/05/22 Пнд 17:44:31 #262 №2348734 
>>2348700
> оверенжинеред фронт
Скорее недо. Отсюда и все эти костыли
Аноним 02/05/22 Пнд 19:29:51 #263 №2348793 
image.png
image.png
image.png
image.png
>>2348603
Да
>>2348629
Задачу поставили просто создать сайт для лаборатории где будет возможность добавлять новые публикации, добавить админку, также менять язык сайта. Я ведь по идее смогу потом спокойно подключить через нод жс какую-нибудь БД к реакту без проблем, но этим раньше не занимался
Я пока в jsx переписываю, а потом для раздела подумаю как добавить бд. Вопрос был просто в оформлении, как грамотно сделать, ну в общем-то я думаю нормально всё оформил.
1. Есть компонент куда текст вставлять 2. Есть компонент где этот текст отформатирован. 3. Просто засовываю его

а в индекс js просто маршрутизацию запихнул.

Мне просто хочется понять как в реальных проектах оформляют или это не сильно важно, на работе объяснят че как делать
Аноним 02/05/22 Пнд 19:53:53 #264 №2348813 
2.png
>>2348728
>>2348729
Спасибо большое
Аноним 02/05/22 Пнд 19:56:36 #265 №2348815 
>>2348793
>смогу потом спокойно подключить
спустя месяц:
>как сохранить jsx в монгу?
Аноним 02/05/22 Пнд 19:57:24 #266 №2348816 
>>2348815
кек
Аноним 02/05/22 Пнд 20:01:20 #267 №2348820 
Очередная рубрика пердолим реакт.

У меня есть панель одна, у меня есть панель другая.

Как функцией из компонента одной панели, поменять статы другой панели?

Создавать в родителе панелек стейты и парелелльно скидывать хендлеры звучит как говно.
На ванильномс жсе это было бы проще потому что можно было бы напрямую менять статы. Ну или можно было бы использовать отдельный объект-класс-хранилище ивентов, медиатор короч.
Есть идеи-лайвхаки как это провернуть?
Аноним 02/05/22 Пнд 20:04:51 #268 №2348822 
>>2348820
Ой да похуй даже ковырять это говно не хочется, отбой.
Аноним 02/05/22 Пнд 20:09:32 #269 №2348825 
>>2348820
>отдельный объект-класс-хранилище ивентов
вот это, только ивент один
любой стейт менеджер
Аноним 02/05/22 Пнд 20:19:33 #270 №2348831 
>>2348820
контекст, пропс дриллинг либо сторонние стейт менеджеры
Аноним 02/05/22 Пнд 20:25:23 #271 №2348837 
element.addEventListener(event, handler[, options]);

Аноны, могли бы вы мне пояснить как читать такие записи в API? Точнее, ту часть с квадратными скобками [, options].
Что она значит? Что это необязательный параметр? Почему запятая внутри скобок?
Аноним 02/05/22 Пнд 20:28:21 #272 №2348838 
>>2348837
Они значат, что это необязательный параметр.
Запятая внутри скобок, потому что она тоже необязательна, если необязательный параметр не передан.
Аноним 02/05/22 Пнд 20:35:41 #273 №2348841 
>>2348838
Понял, спасибо большое
Аноним 02/05/22 Пнд 20:41:44 #274 №2348845 
Если я хочу аватарки для аккаунтов хранить мне нужно yandex cloud или yandex диск подключать?
Аноним 02/05/22 Пнд 20:51:47 #275 №2348849 
>>2348845
Нужна еще spotify, youtube premium и netflix. Без этих подписок сохранятся не будет.
Аноним 02/05/22 Пнд 21:06:04 #276 №2348852 
>>2348813
Какого хуя ты ошибку не вернул в reject?
Кидать throw в коллбеке - бессмысленная и очень хуевая затея.
Аноним 02/05/22 Пнд 21:12:08 #277 №2348854 
>>2348793
> Задачу поставили просто создать сайт для лаборатории где будет возможность добавлять новые публикации, добавить админку
Ну тогда ты и должен был с админки и начать.
Продумать, какую БД использовать и в каком формате хранить тексты.

А добавлять их потом в самом конце через созданную админку.
Аноним 02/05/22 Пнд 21:24:09 #278 №2348860 
>>2348849
Чё ты несешь, наркоман?
Аноним 02/05/22 Пнд 21:25:26 #279 №2348862 
>>2348831
>контекс
Тупое говно тупого говна, она не решает проблему общения между 2 независимыми компонентами, ты сетаешь глобальную переменную, но не можешь поменять ее функционально потому что она read only блеать. Ебануться реактокалеки придумывают костыльные костыли и еще статьи прям выпысивают на максимально убогую хуйню с 0.0001% юзабили потенциалом.

>пропс дрилинг
>Создавать в родителе панелек стейты и парелелльно скидывать хендлеры звучит как говно.
хуилинг

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

Вот помню писал приложуху на нете, просто охуенно, можно было после любого отгула и запоя прийти, тыкнуть в любой модуль из дохуища и по зависимостям спокойно понять что он делает. А с реактором насаживание парочки функции заставляет мою голову болеть.
Аноним 02/05/22 Пнд 21:52:28 #280 №2348875 
>>2348862
>ведь это противоречит принципам ООП
Так сразу бы и сказал, что ты из этих. Тебе только ангуляр жрать.
Аноним 02/05/22 Пнд 21:56:24 #281 №2348879 
image.png
>>2348862
>контекс
>но не можешь поменять
можешь

ООП это не про реакт, там функциональный подход продвигается с дрочем на иммутабельность и чистые функции.
Хочешь ближе к шарпу - попробуй ангуляр.
Аноним 02/05/22 Пнд 22:00:47 #282 №2348882 
>>2348862
Как можно функционально поменять?
Аноним 02/05/22 Пнд 22:35:03 #283 №2348896 
>>2348862
>Вот помню писал приложуху на нете, просто охуенно, можно было после любого отгула и запоя прийти, тыкнуть в любой модуль из дохуища и по зависимостям спокойно понять что он делает. А с реактором насаживание парочки функции заставляет мою голову болеть.
Процедурный фанат побочных эффектов вкатился в тред. Продолжай дальше писать for (int i = 0; i < N; ++i), свитер. Ты не понимаешь что всякие редаксы нужны для one-way data flow, когда все мутации стейта централизованно выполняются в отдельном модуле-редьюсере, а все твои компоненты занимают только рендерингом и ничем больше. Ты заебёшься понимать, что произошло когда какой-то компонент в твоей иерархии стриггерил ивэнт, который поменял стейт в трёх других компонентах, которые в свою очередь поменяли стейт в ещё десяти других компонентах и вся эта каша из побочек ещё 10 циклов устаканивается, а потом у тебя на UI не то, что нужно отобразилось и ты лезешь в свой императивный параша-код понимать что произошло, а потом ты вообще увольняешься нахуй потому что сложнее туду листа стейт не получается у тебя сменеджить.
Аноним 02/05/22 Пнд 23:41:23 #284 №2348913 
>>2348875
Я слышал ангуляр треш похлеще реакта, так что я выбираю меньшее из зол, да простит меня Гервант из Ривенделла.

>>2348879
Спасибо за решение.

>>2348896
Ты меня раскусил, я люблю свитера, это можно конечно в пасту, но с реальностью это мало отношения имеет.
Патерны и тесты и все очень легко понимается, если красиво раскидано-заархитеткурено.
Аноним 03/05/22 Втр 00:03:22 #285 №2348919 
>>2348913
>Патерны и тесты и все очень легко понимается, если красиво раскидано-заархитеткурено.
Ну так покажи мне как у тебя код организован, что всё понятно и охуенно и я скажу, что хуже ещё не видел.
Аноним 03/05/22 Втр 00:10:46 #286 №2348922 
>>2348919
Ты так про все можешь сказать, я тоже могу много чего сказать, но как говорят - пиздеть не мешки ворочать.
Время покажет уже показало) что из парадигм круче\востребованее\удобнее.


Аноним 03/05/22 Втр 00:11:46 #287 №2348924 
>>2347932
>Material UI, Ant Design и Chakra UI
Посмотрел Material UI и Chakra UI. Заебись, мне нравится.
Фронт движется в сторону библиотек UI-компонентов.
Впервые люди дошли до этой идеи с бутстрапом, но он предлагает уровень организации компонентов лишь на уровне CSS.
Современные же фреймворки предоставляют компоненты на таком же уровне абстракции, как в мобильной разработке. У компонентов может быть своя собственная встроенная логика и скрытая реализация html и css.
Например, не просто таблица, а таблица сразу с сортировкой по столбцам, при этом ты не реализуешь логику сортировки, она содержится в компоненте.
Охуенно, хуле.
Аноним 03/05/22 Втр 00:33:51 #288 №2348933 
1531292352809.png
>>2348820
> Создавать в родителе панелек стейты и парелелльно скидывать хендлеры звучит как говно.
Ну тип да, так и надо, вон на ихнем сайте буквально это написано.
> На ванильномс жсе это было бы проще потому что можно было бы напрямую менять статы.
А потом искать какого хуя оно непредсказуемо меняется и гадать а нахуя тогда нужен реакт, если у тебя всё равно всё императивно.
> Ну или можно было бы использовать отдельный объект-класс-хранилище ивентов, медиатор короч.
Ты только что стейт менеджер.
Аноним 03/05/22 Втр 01:13:04 #289 №2348946 
>>2348933
Спасибо за твои 5 копеек в копилке.
Аноним 03/05/22 Втр 01:43:58 #290 №2348956 
>>2348924
>он предлагает уровень организации компонентов лишь на уровне CSS
Аккордионы, модалки, тултипы, тосты по твоему реализуются только через CSS? Bootstrap уже давно полноценный фреймворк, как с js так и с css.
Аноним 03/05/22 Втр 07:26:37 #291 №2348989 
>>2348956
>Аккордионы, модалки, тултипы, тосты

Для всего этого длстаилчно только css. Половиеа из тобрй перечисьенного вообще нативные элементы браузера.
Аноним 03/05/22 Втр 07:44:32 #292 №2348995 
говно.png
Бля пацы, запилил короче своими силами учебный проект. Но в консоли просто пздц творится. Что самое смешное, приложение работает как и задумано. Но состояние консоли удручает. Если я залью так проект в портфолио надо мной не будут ржать потом?
Аноним 03/05/22 Втр 08:32:33 #293 №2349008 
>>2348989
>Для всего этого длстаилчно только css.
Не достаточно.
>Половиеа из тобрй перечисьенного вообще нативные элементы браузера.
Нативным можно назвать только модальное окно, всего остального нет. Тултип, встроенный в браузер появляется за пределами DOM, поэтому не считается.
Аноним 03/05/22 Втр 08:34:16 #294 №2349009 
>>2348995
>Если я залью так проект в портфолио надо мной не будут ржать потом?
Будут.
Вообще, зависит от того, куда ты хочешь податься. Если на галеру формошлепить - никто до ошибок докапываться не будет, а вот на серьезных проектах могут предъявить.
Аноним 03/05/22 Втр 08:52:58 #295 №2349020 
>>2349008
details это потвоему что такое?
Аноним 03/05/22 Втр 08:54:15 #296 №2349021 
>>2349008
>Тултип

element[tootltip-message]:hover::after {
content: attr(tooltip-message); position: absolute;
}
Аноним 03/05/22 Втр 09:04:28 #297 №2349025 
>>2348924
Так эти либы - костыли для заднеприводных. Поставил ты такой свой материал юай, а бизнес-логика требует, чтобы кнопка чуть тихо пердела при нажатии. И компонент на материале моментально превращается в месиво пропсов и костылей.
Аноним 03/05/22 Втр 09:22:13 #298 №2349032 
>>2349020
>details это потвоему что такое?
Спойлер с минимальной возможностью нормальной стилизации. Аккордеон ты как из него сделаешь?
>>2349021
Попробуй у границы окна вызвать такой тултип
Аноним 03/05/22 Втр 09:40:46 #299 №2349046 
>>2349032
Аккордеон это и есть спойле, мань.
https://html5css.ru/howto/howto_js_accordion.php
https://webref.ru/layout/pseudo-class-checked/accordion

Все эти примеры по ссылкам тривиально реализуются через details.
Аноним 03/05/22 Втр 09:58:08 #300 №2349057 
<details> не подходит для мокрых писечек, так как он переключает наполнение контента через display, а это значит никаких тебе няшных анимаций открытия/закрытия.
Аноним 03/05/22 Втр 10:02:02 #301 №2349060 
>>2349046
>Все эти примеры по ссылкам тривиально реализуются через details
Ну реализуй мне со стилями и анимированным переходом тогда. Хотя бы самый минимум. Учитывая, что это тривиально, за пару минут управишься.
Аноним 03/05/22 Втр 11:21:50 #302 №2349135 
>>2349057
Няшные анимации не являются функциональным требованием.
Progressive enhacement.
Аноним 03/05/22 Втр 11:23:13 #303 №2349138 
>>2349135
>Няшные анимации не являются функциональным требованием.
Ещё как является, так как плавные переходы - одна из основ UX.
Аноним 03/05/22 Втр 11:53:18 #304 №2349179 
1.PNG
2.PNG
3.PNG
4.PNG
Помогите....
Какого хуя не выдает ошибку, если в поле 1 символ?
Там же в правилах длинна минимум 2 должна быть!
Аноним 03/05/22 Втр 16:24:16 #305 №2349395 
>>2349179
В шары ебешься? Там два символа.
Аноним 03/05/22 Втр 21:04:55 #306 №2349574 
Screenshot20220503205752.png
>Material UI
Как называется эта болезнь? Это обычный select. Эта хуйня высрала 45 дочерних компонентов и еще по 12 на каждый элемент списка.
Вот после такой хуйни вкладка браузера и отжирает 2 гига памяти.
Аноним 03/05/22 Втр 22:05:48 #307 №2349610 
>>2349179
Скока геммороя,написал бы на ваниле
Аноним 03/05/22 Втр 22:36:34 #308 №2349624 
>>2349574
Ты уверен, что от прокидывания рефов у тебя память отжирается? А так это обычный компонентный подход.
Аноним 03/05/22 Втр 22:41:58 #309 №2349625 
>>2349610
А в чем геммор? 2 раза копипаст нажать?
Аноним 03/05/22 Втр 22:55:21 #310 №2349628 
>>2349624
>Ты уверен, что от прокидывания рефов у тебя память отжирается?
Нет блять, высрать 2 сотни компонентов - это бесплатно по памяти.
>А так это обычный компонентный подход.
Это говнокод какой-то ебаный, полный игнор встроенных возможностей браузера.
Ради идеального пиксельного соответствия гайдлайнам ебаноидов из гугла построили целый манямирок из 200 компонентов, чтобы отрендерить сраный селект. Страшно представить, че у них там в компонентах посложнее происходит.
Аноним 03/05/22 Втр 23:01:54 #311 №2349629 
>>2349628
> Нет блять, высрать 2 сотни компонентов - это бесплатно по памяти.
Это тебе реакт дев тулз показывает кучу компонентов. На деле большая часть их - всякие HOCи и прочие врапперы, которые в DOM ничего не добавляют. Так что оверхеда с них не больше, чем со всяких вызовов функций с замыканиями.
>Это говнокод какой-то ебаный, полный игнор встроенных возможностей браузера.
Ты хоть пробовал встроенный селект использовать за пределами хэлловорлда, знаток?
Аноним 04/05/22 Срд 00:48:10 #312 №2349655 
>>2349629
>Ты хоть пробовал встроенный селект использовать за пределами хэлловорлда, знаток?
Ну охуеть теперь, как же мы без 200 компонентов на селект жили-то все это время.

Ковыряю эту муйню и дико ору с того, что она состоит из костылей чуть менее, чем полностью.
В половине этих говнокомпонентов используется id, а в половине name, лол. Когда как в каждом должно быть и то и другое, как в обычных контролах браузера.
Но в mui тому же Select нельзя задать атрибут id, а Autocomplete нельзя задать name (инпуту нельзя имя задать, это пушка нахуй).
В одних компонентах в качестве target нормальные HTML объекты, в других какие-то костыли вида {hui: pizda, sosi: loh}.
Такое чувство, что каждый компонент делал отдельный индус, предварительно объебенившись боярой.
Аноним 04/05/22 Срд 02:06:13 #313 №2349659 
Пиздец залупа костыльная, триллион компонентов, какая-то аналоговнетная хуйня в таргетах, падает с нихуя без сигнализации ошибок.
Нахуй этот миюай, внатуре будто в компании сяоми делали, пробую чакру.
Аноним 04/05/22 Срд 03:40:31 #314 №2349668 
1iv6HmPKeL3O4cHCwMLBjGw.png
Привет, хотел спросить по поводу Реакта: мне одному кажется, что идея смешивать разметку (представление) и логику в одном месте (на примере JSX) это не очень хорошая идея? По сути у Реакта, получается, нет HTML-шаблонизатора и ты сам руками как бы пишешь синтаксическое дерево HTML-элементов у себя в коде, а сам JSX это тончайший слой сахара над вызовом встроенных JavaScript функций.
На мало того: поверх ещё предлагается стилизацию компонента вынести из отдельного файла и заинлайнить прямо в код логики рендеринга компонента. Со мной что-то не так или это теперь норма? Сам я пока пишу на Angular/Vue, где есть строгое разделение между этими ответственностями, но в идеале хотел бы писать на Реакте, потому что модно. Но каждый раз когда смотрю на "правильный" код файла Реакт-компонента, то у меня глаза разбегаются. Я даже слабо представляю как инструментами статического анализа можно было бы заставить людей писать поддерживаемый Реакт код условного большого проекта.
Аноним 04/05/22 Срд 07:56:27 #315 №2349680 
Думал, что флаттер - это какой-то мемный форс. А это годнота судя по описанию, на него пересядут потом?
Аноним 04/05/22 Срд 07:57:27 #316 №2349681 
image
но вообще название схоже с флаффером, неудачное название
Аноним 04/05/22 Срд 08:48:36 #317 №2349700 
12к.png
Помогите, пожалуйста. Допустим у меня есть промис, в колбеке которого лежит функция, которая принимает в себя некоторые аргументы. Как мне при вызове этого промиса передать эти аргументы во внутреннюю функцию?
Аноним 04/05/22 Срд 09:03:30 #318 №2349708 
>>2349700
Просто делаешь функцию вокруг промиса или я чет не понял
Аноним 04/05/22 Срд 09:14:39 #319 №2349714 
>>2349708
короче, как мне в обертку промиса пихнуть аргументы для внутренней функции
Аноним 04/05/22 Срд 09:16:58 #320 №2349715 
>>2349668
Вуедебил, успокойся.
Аноним 04/05/22 Срд 09:19:25 #321 №2349718 
>>2349714
async function promisObertka(func, ...args) {
await Promise.resolve(func(...args))
}
Аноним 04/05/22 Срд 10:31:39 #322 №2349764 
>>2349668
Философия реакта в разделении на компоненты. Это же логично: логика, отображение, стили компонента должны находится в одном месте, в одном файле вообще идеально
Аноним 04/05/22 Срд 10:59:56 #323 №2349795 
>>2349700
const exampleFunction = async (arg1, arg2) => {
return arg1+arg2;
}
...
await exampleFunction(...args);

Аноним 04/05/22 Срд 12:07:10 #324 №2349827 
>>2349718
Если вы вдруг видите, как вам кто-то показывает код, в котором он await'ит что-то перед ретурном из async функции, имейте ввиду, что перед вами тупой долбоёб, понятия не имеющий как устроены промисы.
Аноним 04/05/22 Срд 12:10:40 #325 №2349830 
>>2345096
Блять, что лучше ооп, фп или процедурное программирование. Ну и вопросы тут задают. Попробуй ооп подход, но имей ввиду, что есл пойдешь потом во фронт, то там твое ооп никому не нужно, все будет на функциях.
Аноним 04/05/22 Срд 12:12:58 #326 №2349832 
>>2345215
У тебя у эл-ов массива есть индекс, его и заюзай
Аноним 04/05/22 Срд 12:15:02 #327 №2349835 
>>2349827
Чел ты рофлишь? Я смотрел код из вполне авторитетного источника и там было такое. Там была обёртка для функции экспресса, ну которая (req,res,next)
Аноним 04/05/22 Срд 12:24:23 #328 №2349846 
>>2349835
Нет, не рофлю.
Попробуй обяснить в чем разница между твоим кодом и вот этим

async function promisObertka(func, ...args) {
return Promise.resolve(func(...args))
}

А после ответить, зачем ты await'ишь результирующий промис в async-функции.
Аноним 04/05/22 Срд 12:42:27 #329 №2349863 
image
image
>>2349846
Ну вот тебе запрос к бд через евейт в трай кеч блоке. Это дефолт тупо
Аноним 04/05/22 Срд 12:46:23 #330 №2349873 
>>2349863
Какое отношение это имеет к предыдущим кускам кодам и в частности ктвоему изначальному.ты совсем не понимаешь разницы?

Я попросил тебя ответить на вопрос - зачем ты в своем коде авейтнул результирующий промис. С какой целью? ты можешь это объяснить? Или все же признаешь что не понимаешь почему ты это делаешь?
Аноним 04/05/22 Срд 12:47:24 #331 №2349876 
>>2349863
То, что на твои скриншотах ни один промис не является результирующим тебя не смущает?
Аноним 04/05/22 Срд 12:49:25 #332 №2349878 
>>2349876
>>2349873
а так я вообще мимо проходил, там анон фигню написал дадбадбадабд
Аноним 04/05/22 Срд 12:49:47 #333 №2349880 
>>2349827
Вот только там ретурна нету, так что ты обосрался. Так же обосрался с синтаксисом асника, а заодно не понимаешь, как работает Promise.resolve() и зачем его используют.
Аноним 04/05/22 Срд 12:51:31 #334 №2349884 
>>2349714
Вот за этим и сделали тайпскрипт. В ванильном жиэсе хуй поймёшь что у тебя в переменных содержится, ни автокомплита, нихуя
Аноним 04/05/22 Срд 12:58:35 #335 №2349896 
>>2349827
> в котором он await'ит что-то перед ретурном из async функции, имейте ввиду, что перед вами тупой долбоёб, понятия не имеющий как устроены промисы.
Да что ты говоришь? Если написать await перед неасинхронной функцией, то программа хотя бы упадет с ошибкой. Это дополнительный контроль типа возвращаемого значения, дебс. На случай, если вызываемый метод перестал быть асинхронным.
Аноним 04/05/22 Срд 13:04:38 #336 №2349908 
image.png
>>2349896
> Если написать await перед неасинхронной функцией, то программа хотя бы упадет с ошибкой

Спешие видеть, еще один тупой долбоёб. На этот раз не знающий, как на самом деле работает await.
Аноним 04/05/22 Срд 13:18:30 #337 №2349925 
>>2349908
Ты версию браузера забыл указать, долбоёб.
Аноним 04/05/22 Срд 13:19:35 #338 №2349929 
>>2349925
Не позорься.
Аноним 04/05/22 Срд 13:25:09 #339 №2349934 
Screenshot59.png
>>2349908
Вот же зрада, я обосрался, а ты был прав.
Аноним 04/05/22 Срд 13:27:47 #340 №2349939 
>>2349934
Но все равно смысл есть, редактор сообщит о несоответствии типов.
Аноним 04/05/22 Срд 13:29:24 #341 №2349941 
>>2349929
Ты так и не указал версию браузера.
Аноним 04/05/22 Срд 14:00:04 #342 №2349958 
>>2349939
Не сообщит. Никаких проблем с типами там нет.
Аноним 04/05/22 Срд 14:18:04 #343 №2349966 
>>2345933
Хуя тут малолетки-долбоебы высераются про подходы к разработке о которых нихуя не знают. Сомневаюсь, что если поймать тебя на улице ты хотя бы расшифруешь аббревиатуру tdd
Аноним 04/05/22 Срд 14:28:00 #344 №2349970 
>>2349966
Свидетель TDD подал голос. Пиздуй тесты на геттеры и сеттеры писать, а то ПМ отпиздит за не 100% покрытие.
Аноним 04/05/22 Срд 14:38:51 #345 №2349976 
>>2346957
Ептать, у меня 4 года опыта фулкеком, я в душе не ебу че они несут про вебпак.
Аноним 04/05/22 Срд 14:44:53 #346 №2349982 
>>2349976
>у меня 4 года опыта фулкеком, я в душе не ебу че они несут про вебпак.
>4 года опыта фулкеком
bitrix+jquery-макака, ты?
Аноним 04/05/22 Срд 15:24:33 #347 №2350010 
>>2349970
Лол причем тут тесты на геттеры и сеттеры. Я все правильно написал, ты не шаришь нихуя, малолетка.
Аноним 04/05/22 Срд 15:33:17 #348 №2350017 
>>2349982
Не, классический веб стек- реакт, нода и т.д.. Но в вебпаке почти не шарю, максимум могу настройки какогонить лоадера поправить. Хотя недавно с помощью вебпука 5 разбивал монолит на микрофронты, но один хуй, если меня попросить засплитить какието чанки, разбить на бандлы и добавить разные конфиги, то я полезу в доку, т.к. хуй его знает как это делается
Аноним 04/05/22 Срд 15:49:29 #349 №2350040 
>>2350010
Конечно ты всё правильно написал, ты же свидетель. Это все остальные неправильное TDD практикуют, настоящее TDD просто ещё не практиковали.
>>2350017
В доку ты в любом случае полезешь, так как интерфейс конфига меняется между большими версиями.
Аноним 04/05/22 Срд 16:04:45 #350 №2350058 
>>2350040
Значит делаем вывод, что итт одни маньки гуглят доки и стаковерфлоу за других(безруких) манек и кидают нагугленное в тред, корча из себя гуру
Аноним 04/05/22 Срд 16:30:03 #351 №2350077 
>>2350058
> кидают нагугленное в тред, корча из себя гуру
С подключением!
Аноним 04/05/22 Срд 17:00:56 #352 №2350097 
Как быстро в одиночку научиться пользоваться этим гитом?
Аноним 04/05/22 Срд 17:13:05 #353 №2350104 
vsco5e914fa1a3f43.jpg
Я сделал приложение на React, которое показывает погоду, далеко мне еще до джуна?

https://vertically-challenged.github.io/react_weather/
Аноним 04/05/22 Срд 17:23:37 #354 №2350109 
>>2350104
Как раком до Китая.
Аноним 04/05/22 Срд 17:34:52 #355 №2350114 
image.png
image.png
>>2350104
>Нет SSR
>html lang="en"
>You need to enable JavaScript to run this app. При этом все остальное приложение на русском
>пик 1
>пик 2 then then который then'ом погоняет
>табличная верстка
>время в шапке только на момент загрузки
>нет тайскрипта
>каким-то хуем ипортируется react в каждый .tsx файл и не используется при этом
>png иконки в base64
вердикт: еще пол года подрочишь документацию и сможешь закатываться.
>используется create-react-app
>нет конфига под форматирование
>20 кб проебаны на бесполезный axios
>api ключ хранится прямо в репозитории
Из положительного:
1) Для каждого компонента есть изолированные стили в отдельном файле. Использовал бы css модули было бы вообще заебись
2) Настроен линтер
Вердикт: минимум год до джуна
Аноним 04/05/22 Срд 17:35:40 #356 №2350115 
>>2350114
Тащемта, изначально было пол года, но потом увидел create-react-app и поменял мнение.
быстрофикс
Аноним 04/05/22 Срд 17:39:40 #357 №2350119 
>>2350017
>максимум могу настройки какогонить лоадера поправить
Как будто знания, что из себя представляет лоадер не достаточно, что бы считать себя хотя бы минимально шарящим в вебпаке.
Аноним 04/05/22 Срд 17:59:39 #358 №2350129 
>>2350058
Нихуя как у неосилятора вебпака бомбит.
>>2350097
В одиночку как раз не научишься, это же софт для командной разработки, большинство фич тебе покажется оверинжинерингом в контексте соло разработки.
Аноним 04/05/22 Срд 18:18:36 #359 №2350143 
>>2350104
добавь горизонтальный скролл к слайдеру
Аноним 04/05/22 Срд 18:24:44 #360 №2350152 
Как при добавлении элемента в DOM и сразу последующем без таймаута добавлении класса этому элементу заставить его проигрывать анимацию из CSS? Через промис пробовал, не хочет.
Аноним 04/05/22 Срд 18:29:19 #361 №2350155 
>>2350152
requestAnimationFrame
Аноним 04/05/22 Срд 18:42:52 #362 №2350168 
>>2350155
Спасибо большое.
Аноним 04/05/22 Срд 19:59:26 #363 №2350212 
if (document.getElementBId('tvoyamamka').hidden==true) document.getElementById('tvoyamamka').hidden = false
а можно ли как-то тут синтаксис сократить без создания новой переменной?
Аноним 04/05/22 Срд 20:02:41 #364 №2350216 
>>2350212
if (tvoyamamka.hidden) { tvoyamamka.hidden = false }
Аноним 04/05/22 Срд 20:12:24 #365 №2350225 
1565543077162.png
>>2350212
tvoyaMamka.hidden &&= false
Аноним 04/05/22 Срд 20:22:04 #366 №2350232 
>>2350212
Зачем if?
Аноним 04/05/22 Срд 20:23:33 #367 №2350233 
>>2350232
Чтобы открыть сокрытое.
Аноним 04/05/22 Срд 20:34:27 #368 №2350236 
>>2350233
tvotamamka.hidden = !tvoyamamka.hidden

If зачем я тебя спрашиваю?
Аноним 04/05/22 Срд 20:57:38 #369 №2350248 
>>2350236
Чтобы проверить, что оно скрыто.
Аноним 04/05/22 Срд 21:04:18 #370 №2350251 
image
>>2350225
>with
Аноним 04/05/22 Срд 21:32:03 #371 №2350263 
>>2350104
Добавь темную тему.

ты молодец
Аноним 04/05/22 Срд 22:12:06 #372 №2350284 
1651691526003.jpg
>>2350104
>не typescript
Аноним 04/05/22 Срд 22:15:27 #373 №2350286 
>>2350115
> create-react-app
Что плохого в нем?
Аноним 04/05/22 Срд 22:18:01 #374 №2350291 
>>2350104
Такое делается полным новичком за 3-5 подпивасных дней, ты вообще вкурсе что от джуна требуется?
Аноним 04/05/22 Срд 22:23:23 #375 №2350296 
>>2350291
Что?
Аноним 04/05/22 Срд 22:26:59 #376 №2350300 
>>2350286
Джун должен уметь настроить конфиг полностью с нуля и еще в докер пихнуть.
Аноним 04/05/22 Срд 22:34:38 #377 №2350304 
С чего начать изучение Реакта?
Аноним 04/05/22 Срд 22:43:51 #378 №2350310 
>>2350300
> в докер пихнуть
Ну охуеть теперь, nginx туда установить?
Аноним 04/05/22 Срд 23:11:11 #379 №2350326 
>>2350304
С преакта
Аноним 04/05/22 Срд 23:36:13 #380 №2350349 
>>2350129
Так он во всех вакансиях. Как его узнать, если не берут в команду-то?
Аноним 04/05/22 Срд 23:47:05 #381 №2350361 
Зачем вебпак когда есть ванлайнеры, вы что, дураки?
Программирование оно об упрощении разработки всего и вся, а не о написании колес и рытья под капотом.
Любой вопрос о том как собрать банл, поставит ьверсию, зинклюдить лоадер - гуглиться за 5 минут.
Даже представить себе не могу какие такие вы боевые задачи решаете используя самые потаенные и обскурные фичи вебпака.
не писал свой парсер - не мужик
не писал свою базу - не мужик
не писал свой пакет менеджер - не мужик
не сосал у лида - не мужик

Аноним 05/05/22 Чтв 00:06:07 #382 №2350388 
>>2350349
Знал гит на уровне pull commit push checkout.
В первый рабочий день попросили поправить коммиты и исправить их авторство. За часик научился гиту.
Не парься особо, выучи основные команды, а остальное по надобности уже в работе быстренько посмотришь и подучишь.
Аноним 05/05/22 Чтв 00:48:53 #383 №2350405 
>>2350361
>Даже представить себе не могу какие такие вы боевые задачи решаете используя самые потаенные и обскурные фичи вебпака.
Всё, что касается аутпута вебпака, очень обскурно и потаённо, что там даже гуглить заебёшься. Я вот например наскотылил себе свг спрайтшит, но он получается одним файлом с кучей символов, что не айс для долговременной поддержки. Плюс если захочется прикрутить какие-нибудь темовариации иконок, то ебанёшься их синхронизировать.
Наткнулся на поделие жидбрейнсов, которое вроде как бы позволит свг хранить как файлы в сырцах и упаковывать их в спрайтшит при билде:
https://github.com/JetBrains/svg-sprite-loader
Но там какие-то непонятки с пятым вебпаком, плюс главный разработчик умир:
https://github.com/JetBrains/svg-sprite-loader/issues/470#issuecomment-1055373543
Хотелось бы ещё CSS-модули подрубать в свгшные класснеймы, но это получается нужно писать свой лоадер и парсить xml регуляр очками, что то ещё извращение.
И такие истории постоянно всплывают, когда нужно отойти от стандартного конфига. А если слишком каштомно напердолишь свой конфиг, то потом заебёшься его мигрировать на следующую мажорную версию вебпака.
Ну и в докере всё это дело запускать - отдельный квест.
Аноним 05/05/22 Чтв 00:54:23 #384 №2350407 
>>2350405
Докеропроблемы.
Аноним 05/05/22 Чтв 02:18:08 #385 №2350422 
>>2345092 (OP)
Вообще стоит вникать в верстку сейчас? Сам js после питона нормально зашел вроде, может бутстрапа будет достаточно?
Аноним 05/05/22 Чтв 02:19:48 #386 №2350423 
>>2350422
Нет, забей.
Аноним 05/05/22 Чтв 06:17:38 #387 №2350447 
Кто-нибудь может объяснить, как работает ВК. Как при условии того, что это сингл пейдж апликейшн, при переходе на разные подстраницы (мессенджер, новости и тд) менется адресная строка и догружается контент в блок без перезагрузки страницы (тут понятно - history.pushState() + XMLHttpRequest()), но при этом при открытии этого адреса в новой вкладке происходит рендер той же страницы, но у нас в истории уже нет путей из пушстейта, тогда значит, что этот путь лежит где-то в роутах и в респонсе просто рендерится основной костяк + внутренний сменяемый блок. Я могу понять, если там написано 5-10 роутов на каждую подстраницу, но таким же способом рендерятся личные страницы юзеров, видосы и картинки. То есть у них должен быть какой-то специальный универсальный GET роут, ибо я не верю, что у них миллиард разных роутов.

Уважаемые знатоки как это работает.

btw, как в роутере из экспресса реализовать универсальный роут с рендером какого-то шаблона из вью с переменными из бд. К примеру, это будут страницы пользователей, открытые данные которых будут грузиться с шаблона вьюджиэс. Но такие страницы должны будут иметь свой собственный URL. Тогда как слушать такие роуты одним router.get('/???', middleware)?
Аноним 05/05/22 Чтв 07:23:45 #388 №2350452 
>>2350447
Блять ты в роутере можешь параметры передавать, а потом в компоненте их читать. Вот тебе и миллион страниц.
Аноним 05/05/22 Чтв 09:02:52 #389 №2350464 
>>2350310
Тащемта добавление nginx, это пара строк кода. А докер знать надо обязательно. Когда лид тебе скажет собери и залей образ в наш реджистри т.к. cicd не работает/отвалился/еще пилится, ты жидко пукнув даже залогиниться в реджистри не сможешь.
Аноним 05/05/22 Чтв 10:44:08 #390 №2350498 
>>2350452

То есть, я создаю роут, который слушает все GETы, внутри него делаю логику проверки GETов (их получу из объекта req) - есть ли в бд id == url, и потом рендерю страницу с пользовательскими данными.

В принципе норм.

Но, значит, что страница, построенная аяксом - это по своему происхождению не тоже самое, что страница, полученная через GET запрос?
Аноним 05/05/22 Чтв 10:58:13 #391 №2350506 
>>2350498
чувак, ты чё не можешь загуглить что такое параметры и ещё на будущее что такое query string? это отдельные концепции, не надо сову тянуть на глобус
мимо
Аноним 05/05/22 Чтв 11:18:53 #392 №2350521 
>>2350506
Я понимаю, что ты тут как рыба в воде, но я не разбираюсь.

>загугли параметры

Параметры функции? Или чего? Нади то, не знаю что. Извини, если грубо, просто жопа горит.
Аноним 05/05/22 Чтв 12:02:54 #393 №2350544 
>>2350498
>То есть, я создаю роут, который слушает все GETы, внутри него делаю логику проверки GETов (их получу из объекта req) - есть ли в бд id == url, и потом рендерю страницу с пользовательскими данными.
В контексте SPA роутер получает урл, компонент вытаскивает из него нужные параметры через хук, перекладывает их в запрос на сервер, получает ответ от сервера и датой из ответа наполняет своё состояние.

>Но, значит, что страница, построенная аяксом - это по своему происхождению не тоже самое, что страница, полученная через GET запрос?
Конечно, в этом вся ссуть клиентского рендера.
Аноним 05/05/22 Чтв 12:04:03 #394 №2350545 
>>2350506
Но все равно спасибо
Аноним 05/05/22 Чтв 12:04:53 #395 №2350546 
>>2350544
Спасибо
Аноним 05/05/22 Чтв 12:07:21 #396 №2350547 
>>2350521
вот тут про это есть Route parameters
https://expressjs.com/en/guide/routing.html
Аноним 05/05/22 Чтв 12:36:48 #397 №2350575 
>>2350114
>>используется create-react-app
Что за доеб? Чем он тебе не угодил?
Аноним 05/05/22 Чтв 13:16:37 #398 №2350595 
>>2350575
cra для безруких долбоебов, которые не могут настроить вебпук под свои нужды и не способны в элементарную архитектуру приложухи

cra маньки, от вас воняет дилетантством
Аноним 05/05/22 Чтв 15:22:08 #399 №2350662 
>>2350595
Это хороший отдебаженный инструмент который гадится для 99% случаев. Если переписанный с какой-нибудь статьи костыльный конфиг вебпака добавляет тебе самооценки, то дерзай.
Аноним 05/05/22 Чтв 15:42:57 #400 №2350684 
>>2350662
Двачую. Я тоже увидел, что тут один анон всегда спорит, что кря не нужен. И почитал комментарии, там большинство утверждает, что кря писали крутые челики и типа ничего плохо в его использовании нет
Аноним 05/05/22 Чтв 16:12:03 #401 №2350703 
>>2350684
Где ты там почитал комментарии? На странице в фейсбуке? Пейсбук запилил CRA для своих нужд и продвигает плохие практики, типа отсутствия границы между девелоперскими и продакшн зависимостями, что вредит к понимаю разработки в целом и менеджера пакетов в частности. Пейсбуку на это похуй, в нём пердолики-олимпиадники работают, так что разберутся. А вкатуну это чистый вред.
Аноним 05/05/22 Чтв 16:22:48 #402 №2350710 
>>2350464
> Тащемта добавление nginx, это пара строк кода
Я про это и говорю. В чем смысл пихать 1 строчку в докерфайл для задачи "отдать файл bundle.js"? Показать, какой ты даун?
В бекенде докер используют, потому что иначе твой высер просто не запустить из-за хуевой горы специфических зависимостей, ставить которые себе на машину никто не будет.
Аноним 05/05/22 Чтв 16:23:19 #403 №2350711 
>>2350703
>отсутствия границы между девелоперскими и продакшн зависимостями, что вредит к понимаю разработки
Не вредит, ты просто слабоумный
>менеджера пакетов
Какая вообще разница где там пакеты блять лежат? Мы пишем реакт приложение которое будет деплоится на хостинг, и он всегда private, его никогда никогда не будет устанавливать себе в проект
Аноним 05/05/22 Чтв 16:23:47 #404 №2350712 
>>2350711
>никогда
никто*
фикс
Аноним 05/05/22 Чтв 17:03:39 #405 №2350753 
>>2350711
>Не вредит, ты просто слабоумный
По твоему тексту ниже вполне видно, что вредит.
Аноним 05/05/22 Чтв 17:15:00 #406 №2350764 
1.png
2.PNG
Друзья помогите плиз с нодой. Вот пик 1 - сервер. Когда перехожу на localhost:5000 то получаю ответ Welcome. Но если пробую перейти на localhost:5000/api/v1/auth/register то получаю ошибку 404. Раут register на втором пике прописан. А функция register простая.
const register = (req, res) => res.send("register user")

В чем косяк?
Аноним 05/05/22 Чтв 17:17:33 #407 №2350766 
>>2350764
https://stackoverflow.com/questions/70720661/post-http-localhost5000-api-auth-login-404-not-found
Аноним 05/05/22 Чтв 17:21:26 #408 №2350773 
>>2350764
а как выглядит запрос? у тебя там пост, мб метод не тот?
Аноним 05/05/22 Чтв 17:26:08 #409 №2350775 
>>2350773
Запрос так выглядит
http://localhost:5000/api/v1/auth/register.
А так я post запрос в рауте прописывал.

>>2350766
Там пишут из-за ошибки в фронте. Но фронт я еще не подключал. В постмане тестирую только
Аноним 05/05/22 Чтв 17:37:58 #410 №2350791 
>>2350775
ещё может быть импорт экспорт неправильный?
Аноним 05/05/22 Чтв 18:56:47 #411 №2350842 
>>2350104
А мне нравится, мило получилось.
Сеньёр vue разработчик
Аноним 05/05/22 Чтв 19:33:54 #412 №2350879 
Бляяяя вообще никакие post реквесты не отправляются. Ну что за хуйня
Аноним 05/05/22 Чтв 19:34:39 #413 №2350881 
>>2350879
О боже мой, у программиста опять ничего не работает, вот никогда такого не было и вот опять!
Аноним 05/05/22 Чтв 19:36:57 #414 №2350885 
>>2350284
Нахуй не нужен джуну
Аноним 05/05/22 Чтв 19:42:56 #415 №2350891 
>>2350104
Когда ты собираешься вкатываться? Ты ведь уже сюда скидывал пачку проектов на оценку.
Аноним 05/05/22 Чтв 19:54:01 #416 №2350896 
>>2350879
Ты откуда и куда их отправляешь?
Аноним 05/05/22 Чтв 20:06:55 #417 №2350906 
>>2350896
Прям в server.js

Get запросы отправляет а все post пишет 404.
Притом в консоли браузера почему-то post запросы как get определяет.
GET http://localhost:5000/ddd 404 (Not Found)
Аноним 05/05/22 Чтв 20:26:33 #418 №2350924 
мб потому что браузер через строку поиска отправляет гет запросы?
Аноним 05/05/22 Чтв 21:55:23 #419 №2350964 
Ну как, готовы все файлы переименовывать для переезда на ESM?
https://devblogs.microsoft.com/typescript/announcing-typescript-4-7-beta/#new-file-extensions
Аноним 05/05/22 Чтв 23:19:10 #420 №2350994 
01-Yeah-Right-m4a-image.jpg
Помогите беззубому крестьянину. Делаю туду-лист с поддержкой md. Использую markdown-it. На вход даю текст: '# text' -> получаю <h1>text</h1>. Как теперь обратно превратить <h1>text</h1> --> '# text'. Раньше вроде все через md.render() работало как в одну сторону, так и в другую.
Аноним 06/05/22 Птн 04:30:24 #421 №2351059 
>>2350104
Выглядит мертво как-то. И чего серч бар не ебанул?
Аноним 06/05/22 Птн 04:53:09 #422 №2351062 
Ребята, подскажите пожалуйста. Проходу учебник Кантора, и мне не очень понятен следующий момент:

функции конструкторы мы вызываем так

let obj = new Constructor(arg1, arg2)

где Constructor - уже определенная функция, либо function declaration либо function expression.

Далее, в учебнике говорится, что если кусок кода создает объект, то его можно обернуть в функцию таким образом:

let obj = new function() {
// code here
}

У меня вопрос. Почему синтаксис именно такой? Ведь по идее, мы создаем function expression, который нужно вызвать, тогда бы логичнее было бы вот так

let obj = new (function() {/ code here /})()

Обращаю ваше внимание на скобки вызова в конце выражения.

Я что-то недопонимаю, помогите пожалуйста. По идее же после new должна вызываться уже определенная функция, а как предлагает Кантор, функция просто создается в момент как function expression и она передается в new, что по мне не очень правильно, ведь когда делаем new Constructor(arg1, arg2) мы как бы вызываем эту функцию, а обертка на это не похожа. Простите за сумбур и помогите!



Аноним 06/05/22 Птн 07:03:43 #423 №2351071 
>>2351062
ну считай new - оператор вызова конструктора, () - оператор вызова функции
Аноним 06/05/22 Птн 07:22:04 #424 №2351074 
>>2351062
как я понимаю new _(...a) это тупо отдельная конструкция
в лексере или на какой там стадии
Аноним 06/05/22 Птн 07:58:02 #425 №2351079 
>>2351071
Так не пойдет, тут получается new Constructor() - тут присутствует вызов функции.

>>2351074
Т.е. это отдельный частный случай, то бишь исключение?
Аноним 06/05/22 Птн 08:10:41 #426 №2351080 
>>2351079
это скобки для аргументов
Аноним 06/05/22 Птн 08:12:25 #427 №2351081 
>>2351079
>Так не пойдет, тут получается new Constructor() - тут присутствует вызов функции.
это отдельная конструкция к вызову функции отношения не имеющая
>Т.е. это отдельный частный случай, то бишь исключение?
это не исключение это отедльная штука
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/Function
Аноним 06/05/22 Птн 08:23:26 #428 №2351083 
>>2351079
Непонятно что тебе непонятно.
Эта конструкция (создание объекта) читается целиком
new ClassName(1, "привет",...); - вызов конструктора с параметрами
new ClassName; - вызов без параметров. В жс нет перегрузки поэтому параметры undefined
Все как везде
Аноним 06/05/22 Птн 10:40:42 #429 №2351127 
>>2351079
Конструктор и есть функция, точнее метод.
Аноним 06/05/22 Птн 11:43:52 #430 №2351156 
>>2350662
>>2350684
>там большинство утверждает, что кря писали крутые челики и типа ничего плохо в его использовании нет
>Это хороший
2к зависимостей для готового конфига вебпака. Пиздец, какие же вкатуны дегенераты. История с leftPad и node-ipc ничему не учит. Особенно забавляют высеры про "крутых челиков", которые по факту являются рандомными вкатунами никак не связанными с командой, которая пилит сам реакт
>гадится для 99% случаев
Гадится только для 1% случаев, когда тебе надо запилить демку или проверить гипотезу. А нет, уже не годится, для этого уже намного целесообразнее использовать vite.
Аноним 06/05/22 Птн 11:50:47 #431 №2351162 
>>2350964
В чем заключается суть твоего высера?
Аноним 06/05/22 Птн 11:55:46 #432 №2351165 
>>2351162
Прочитай текст по ссылке и узнаешь.
Аноним 06/05/22 Птн 11:58:14 #433 №2351166 
>>2351165
Прочитал, так где причина, по которой надо все файлы переименовывать? Или ты только в штаны срать умеешь? .mjs и .mts были еще с 2017
Аноним 06/05/22 Птн 12:06:04 #434 №2351170 
>>2351166
>.mjs и .mts были еще с 2017
Не пизди, тайпсрипт только в этом году начал активно пилить интеграцию в ESM, то что там отдельные поехи в 2017 уже себе переименовывали - абсолютно однохуйственно.
Аноним 06/05/22 Птн 12:08:11 #435 №2351173 
>>2351170
Не съезжай с темы. По какой причине мне придется переименовывать все файлы в проекте? Или засчитываем тебе обсер?
Аноним 06/05/22 Птн 12:12:22 #436 №2351177 
>>2351170
>отдельные поехи в 2017 уже себе переименовывали - абсолютно однохуйственно.
Че ты несешь? Расширение .mjs обозначено в спецификации es-модулей внутри node.js. И да, оно появилось как раз в 2017. mts тоже появился примерно в том же периоде.
https://github.com/nodejs/node-eps/blob/master/002-es-modules.md
Аноним 06/05/22 Птн 12:44:09 #437 №2351189 
>>2351173
Потому что у тебя гарантированно не заработает код простым переключением type в корневом package.json на кодовой базе сложнее хэлловорлда.
Плюс отвалятся тесты, так как тестовые фреймворки не могут в ESM от слова совсем. Они не могли в него даже когда он был всего-лишь пуком бабеля.
>>2351177
>Че ты несешь? Расширение .mjs обозначено в спецификации es-модулей внутри node.js.
И чё, от того что его добавили в спецификацию в 2017, означает, что добавление расширений - не ебанутый мув? А модульная система после ESM тоже будет префиксы с вариациями к существующим cjs/mjs/cts/mts добавлять? Что там насчёт jsx/tsx? Дохуя реактокода есть, который был написан не некоем подобии ESM но с рекваирами для динамического импорта, так что и здесь нужны модульные префиксы.
Ну-ка напиши мне псевдокод, как ты собираешь все жс файлы (тайпскрипт инклюдед) проекта в хэш-таблицу где ключ - отностительный путь к файлу от корня проекта. До нодовского ESM и после.
Аноним 06/05/22 Птн 12:58:21 #438 №2351195 
>>2351189
>Потому что у тебя гарантированно не заработает код простым переключением type в корневом package.json на кодовой базе сложнее хэлловорлда.
>Плюс отвалятся тесты, так как тестовые фреймворки не могут в ESM от слова совсем. Они не могли в него даже когда он был всего-лишь пуком бабеля.
Так причем тут переименование файлов то, дебс?
Аноним 06/05/22 Птн 14:37:46 #439 №2351263 
Где можно посмотреть как устроен js под капотом, про v8 почитать например?
Аноним 06/05/22 Птн 17:05:59 #440 №2351350 
>>2351263
У в8 много нестандартизированых костылей.
Лучше спеки экмаскрипта.
Аноним 06/05/22 Птн 17:48:40 #441 №2351395 
>>2351263
>про v8 почитать например
Не поверишь, но можно посмотреть исходники v8
Аноним 06/05/22 Птн 17:52:30 #442 №2351396 
>>2351263
Прежде чем нырнешь с головой в v8, рекомендую ознакомиться с реализацией попроще, даже если она неполная. Возьми https://github.com/nginx/njs к примеру.
Аноним 06/05/22 Птн 18:59:40 #443 №2351429 
Есть здесь гуру Вебпака? Помогите разобраться. Как решить ебучую проблему с CORS в дев-режиме? Я так понял, через proxy. Но мне нужно проксировать сразу несколько сайтов, а не один URL. В доках указано:

proxy: {
'/api': {
target: 'http://localhost:3000',
pathRewrite: { '^/api': '' },
},

Что блять за /api? Как я должен понять, что это за свойство в контексте прокси? С одиночным вариантом просто указываешь нужный URL без передачи объекта, а в случае множественных URL тогда как? Объясните, плз.
Аноним 06/05/22 Птн 19:03:40 #444 №2351434 
>>2351429
В глаза долбишься? Буквально первая ссылка в гугле.
https://www.google.com/search?q=webpack+cors
Аноним 06/05/22 Птн 19:04:40 #445 №2351435 
image.png
>>2351429
Сколько нужно настройщиков вебпака чтобы прочитать доки?
Аноним 06/05/22 Птн 20:11:02 #446 №2351492 
Как в 2к22 пишут темные темы? Просто через пользовательские свойства css?
Аноним 06/05/22 Птн 22:02:10 #447 №2351570 
>>2351492
Через css-переменные, или через самодельную костыльную магию внутри css-in-js. Ну и олдовый вариантс навешиванием класса на <body> или <html> тоже никуда не ушел.
Аноним 06/05/22 Птн 22:28:04 #448 №2351599 
Хочу к Реакту выучить Vue для себя (и возможно для будущей работы).
Сейчас работаю, пишу на Рякте.

Какую версию изучать: хайповую 3ю или со 2 начать, чтобы легаси понимать?
Аноним 06/05/22 Птн 22:47:57 #449 №2351614 
>>2351599
В 3 бойлерплейта совсем мало, сойдешь с ума после реакта
Аноним 06/05/22 Птн 23:40:43 #450 №2351653 
Имея дело с бекенд разработкой на пайтоне/пхп, разрабатывая всякое по ООП/MVC/другим паттернам, смотришь на react/vuejs и слегонца хреново вьезжаешь почему так.
Знающие/фуллстаки, как быстрее вьехать в перечисленные фреймворки и сформулируйте разницу парадигм/паттернов разработочки вышеперечисленного бека и фронта на react/vuejs.
Аноним 07/05/22 Суб 00:54:00 #451 №2351689 
>>2351653
>сформулируйте разницу парадигм/паттернов разработочки вышеперечисленного бека и фронта на react/vuejs.
Клиент-рендер позволяет реализовывать каштомизированный интерфейс, большая часть даты для которого фактически отдаётся бэком из кэша. А через вэбсокеты так и вообще позволяет общаться с браузерным клиентом. Хуй ты такую архитектуру провернёшь чистым серверным рендером.
Аноним 07/05/22 Суб 03:59:47 #452 №2351718 
>>2351653
1) Дешевая и гибкая модульность. У тебя js компонент может быть полностью независимым модулем, который самостоятельно забирает данные с бека, ты можешь его подключить в любое место интерфейса. Например модуль погоды. Для бекенда этого модуля у тебя будет отдельный тонкий контроллер с независимой логикой, которую ты можешь засунуть очевидным образом в независимую транзакцию. В случае классического серверного рендеринга в реализации подобной модульности у тебя вплывут недостатки. Жирные контроллеры с кучей сервисов-модулей. Ты должен решить как мержить все эти данные, чтобы когда у тебя изменится структура данных в модуле, в сотне контроллеров и шаблонов не пришлось переделывать. Много данных которые передаются в шаблон независимо от того отобрадается модуль в данный момент или нет, а это значит лишние запросы к БД. Js же модуль может данные из нескольких мест получить в разное время, в зависимости от условий, ты будешь иметь дело с изолированной простой логикой в каждом запросе.

2) При клиент рендеринге модель поведения хранится на фонтенде., у тебя нет нужды хранить на бекенде состояние интерфейса - показывать модуль погоды или нет, например. На бекенде только бизнес логика. Упрощается реализация stateless бекенда. При классическом серверном рендеринге, начинают выкручивать себе мозги, решая хранить ли это состояние в URL или в сессии (забив на stateless) или чаше всего реализуют какую-то js модель на фронтенде. Опять же для сложных случаях придется обеспечивать модульность этой модели на фронтенде. Можно было сразу с этого начинать, с SPA.

3) Легкий переход на микросервисы для SPA. Это очевидно.
Аноним 07/05/22 Суб 12:22:05 #453 №2351800 
image.png
Сап аноны, можете подсказать, хочу с браузерной игрушки выгружать результаты (пикрил) чтобы они после каждой игры записывались в эксель или в какой-то массив, сохранялись в общем как-то.
Насколько это сложно реализовать и что почитать? Сам не программист, но в школке что-то тыкал в паскале и сам джаваскрипт немного трогал.
https://loldodgegame.com/skillshot/
Аноним 07/05/22 Суб 13:06:15 #454 №2351816 
>>2351800
Перехватываешь фетч с результатом игры, сохраняешь его в джейсон, а там его как угодно воротишь.
Аноним 07/05/22 Суб 14:35:52 #455 №2351865 
>>2351800
тупая игра
Аноним 07/05/22 Суб 17:14:35 #456 №2351946 
>>2345092 (OP)
как-то сделал моб. приложение с TCP сокетом на серверной части.
и недавно захотел сделать веб версию этого приложения. уже запилил фронт часть, и дойдя до бэка, меня ждало разочарование, что веб поддерживает онли WS.
так вот, можно ли как-то через жс коннектиться к tcp? а-то переписывать сервак как-то не очень хочется
Аноним 07/05/22 Суб 17:42:35 #457 №2351968 
>>2351946
Только прослойку писать на сервере, которая будет трансформировать ws для сокета и обратно.
Аноним 07/05/22 Суб 20:07:28 #458 №2352036 
Подтвердите, я все правильно понял? Есть кусок кода

function f() {
console.log(this);
}

f();

function decorated(func) {
return function () {
setTimeout(func, 1000);
};
}

let g = decorated(f);

g();

первый аутпут логично дает андефайнед в стрикт моде. Но второй вызов, дает мне window. Все дело в том, что при вызове функции func в setTimeout идет this от window.setTimeout. Моя логика верная?


Аноним 07/05/22 Суб 20:54:25 #459 №2352070 
>>2352036
не, функция всегда window вернёт
Аноним 07/05/22 Суб 21:50:00 #460 №2352109 
>>2352070
Так, погоди, я не так понял. Вот есть функция:

function f() {
console.log(this);
}

Ее вызов в стрикт режиме даст андефайнед.

Но если я сделаю так:

setTimeout(f, 100);

Я увижу window. Почему это так?
Аноним 07/05/22 Суб 21:56:16 #461 №2352115 
>>2352036
ух дристануо, сам-то понял?
Аноним 07/05/22 Суб 22:21:36 #462 №2352132 
>>2352109
>стрикт режиме
ну потому что в строгом режиме this в данном случае это undefined
Аноним 07/05/22 Суб 22:25:30 #463 №2352135 
>>2352036
Отрой стандарт и прочитай, там черным по белому написано.
https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#timers
Аноним 08/05/22 Вск 12:22:57 #464 №2352406 
Почему во vue как-то всё всрато и неинтуитивно? Почему я должен я не могу получить доступ к event инпута прям из строки @change?
Почему я должен писать события, допустим, @click в кавычках будто это просто строка?
Что за хуйня, как вы этим пользуетесь?


реактомакака
Аноним 08/05/22 Вск 12:26:43 #465 №2352409 
>>2352406
Про fetch тоже молчу. Я не могу просто написать функцию fetch() в <script> и вызывать её на @click, потому что появляется неведомая ошибка, которая крашит нахуй приложение.
Аноним 08/05/22 Вск 12:30:33 #466 №2352412 
>>2352406
Ты какую-то херню написал. Чем кавычки хуже фигурных скобок? Cинтаксис вуя в шаблонах является валидным html. Ты можешь vuejs c "живой" разметкой работать
Аноним 08/05/22 Вск 12:31:39 #467 №2352413 
>>2351968
хуево, конечно, ну ладно
Аноним 08/05/22 Вск 12:56:24 #468 №2352423 
>>2352406
>не могу получить доступ к event инпута прям из строки @change
Чивоблять.вебм
>@change="something($event)"

>должен писать события, допустим, @click в кавычках
Чивоблять2.вебм
>@change=method
>The HTML standard does not require quotes around attribute values.
>However, W3C recommends quotes in HTML, and demands quotes for stricter document types like XHTML.

Поправляйся скорее, братан, и переходи на нормальные туториалы.
Аноним 08/05/22 Вск 13:00:19 #469 №2352426 
image.png
image.png
>>2352423
> @change="something($event)"

Нихуя (см. пик)

> Чивоблять2.вебм
Прав, сорян, я долбоеб.

> Поправляйся скорее, братан, и переходи на нормальные туториалы.
Читаю офф. доку по 3 вью.
Аноним 08/05/22 Вск 13:08:31 #470 №2352432 
>>2352426
>не могу получить доступ к event
>Cannot read properties of undefined
>reading 'log'
>доступ к event
>log
Все-таки поправляйся.

Ты ведь в курсе, что обработчиками событий должны быть функции? Синтаксис объявления функций помнишь?
Аноним 08/05/22 Вск 13:11:08 #471 №2352434 
>>2352432
Вангую, что он и с фетчем точно также проебался. Неведомая ошибка у него, вообще охуеть.
Аноним 08/05/22 Вск 13:18:08 #472 №2352443 
code2.png
>>2352432
>>2352434
Вот так правильно?

С учетом, что это Vue 3
Аноним 08/05/22 Вск 13:30:33 #473 №2352452 
В вуе крейт-вуй-апп терпрайз тир? Или такой же кал, как cra?
Аноним 08/05/22 Вск 13:30:51 #474 №2352454 
>>2352443
Работать должно, но лично я бы так писать не стал, слишком многословно.
data сделать стрелкой, асинк аваит вместо тхен в фетч, делитДата заинлайнить, задание со зведочкой - зделоть через композишн апи, будет еще короче
Аноним 08/05/22 Вск 15:02:35 #475 №2352552 
code3.png
>>2352454
Я сделяль..

Спасибо большое
Аноним 08/05/22 Вск 15:34:44 #476 №2352581 
Аноны, какие бы вы проекты создать джуну реактеру посоветовали бы?
Аноним 08/05/22 Вск 15:45:20 #477 №2352589 
Screenshot20220508153913.png
Какой же вскод высер мерзкого обблеванного бомжа, я просто хуею...
То, что в вебшторме поддерживается из коробки в одну кнопку, тут или вообще блять не поддерживается или с колоссальным пердолингом.
Банальный пример: выбор шрифта. Где блять селект из установленных в системе шрифтов?
И так везде нахуй. Перемещаться по последним edit location'ам невозможно, только к самому последнему.
При изменении навигации стрелок на CamelCase, они работают только в редакторе, но не в полях редактора типа инпута поиска или этого обосраного окна с настройками.
Поиск говно, все говно.
А еще, этот кал умудряется быть медленнее вебшторма даже при открытии простых файлов типа логов.
Число фейлов этого ублюдства просто не поддается подсчету. Будто вернулся на NetBeans в 2007 год.
Аноним 08/05/22 Вск 16:40:12 #478 №2352656 
>>2352589
А что ты хотел от майкрософт, дружок? У них единственная цель существования - дальнейшая экспансия компании, на удобства пользователей им по-е-бать, нет просто для них такой вещи в принципе
Аноним 08/05/22 Вск 16:51:14 #479 №2352673 
JetBrains - Wikipedia.png
>>2352656
То ли дело жидобрейны - прямо добрые самаритяне.
Аноним 08/05/22 Вск 17:13:25 #480 №2352690 
>>2351816
Спасибо, попробую!

>>2351865
Ну по идее это не игра, а типа тренировка микрухи
Аноним 08/05/22 Вск 17:33:32 #481 №2352704 
>>2352673
>may
А судьи - кто?
Аноним 08/05/22 Вск 17:50:28 #482 №2352719 
>>2352673
Ну мне они подписку до октября продлили. Хотя я почти год на пиратском шторме сидел, созрел для покупки.
Аноним 08/05/22 Вск 18:06:04 #483 №2352731 
>>2352704
Вши судьи - не судьи?
Аноним 08/05/22 Вск 18:24:39 #484 №2352750 
>>2352406
>Почему я должен я не могу получить доступ к event инпута прям из строки @change?
>реактомакака
Как же ты себе насрал в трусы. Это ты в реакте не можешь доступ к ивенту нормальным логичным способом получить, вместо этого тебе реакт выплевывает в твои коллбеки синтетеические эвенты.
Аноним 08/05/22 Вск 18:26:13 #485 №2352753 
>>2352452
Кал. Энтерпрайз тир для рякта и вуя сейчас онли вебпак
Аноним 08/05/22 Вск 18:27:37 #486 №2352754 
>>2352581
Что-нибудь, связанное с редактированием большого количества полей. Например создай табличку в БД на ~20 столбцов и сделай гуй для её редактирования. Ну и простой бэк на ноде или на чем хочешь.
Аноним 08/05/22 Вск 18:48:37 #487 №2352793 
>>2351816
Я посмотрел, там вроде фетч никакой не отправляется, да и игра в оффлайне тоже работает, так что эти результаты никуда не отправляются как я понимаю
Аноним 08/05/22 Вск 18:58:51 #488 №2352810 
>>2352793
Значит дата хранится или в localStorage или IndexedDB.
Аноним 08/05/22 Вск 19:00:52 #489 №2352811 
>>2352810
в localstorage тоже не вижу, в Indexed db вроде тоже ничего не открывается, можешь глянуть?
Аноним 08/05/22 Вск 19:10:03 #490 №2352821 
Какой лучший способ организовать инпут даты (времени)? Я пытался тут довести до ума дефолтный инпут (<input type=date/>) и пиздец говна наелся.
Аноним 08/05/22 Вск 19:26:01 #491 №2352840 
А очистить переменную?
Допустим это строка,через назначение " "?
Аноним 08/05/22 Вск 19:31:50 #492 №2352850 
>>2352811
Нет, сам ковыряйся. Сомневаюсь, что она фетчи не отправляет, так как лидерборды без них - никак. А чтобы фетч отправить, надо данные как-то сохрнаить.
Аноним 08/05/22 Вск 19:41:49 #493 №2352858 
>>2345092 (OP)
Сколько нужно времени для вката? Знаю хтмл, ксс сносно. Сеичас на рсскул прохожу курс жс и понимаю что без гугла могу писать только простые функции. Без душноты ответы ок.
Аноним 08/05/22 Вск 19:47:52 #494 №2352867 
>>2352858
https://learn.javascript.ru/
https://developer.mozilla.org/ru/docs/Web/JavaScript
+google
можно зарегаться на киберфоруме или стековерфлоу(но надо уметь в англ)
Аноним 08/05/22 Вск 19:49:43 #495 №2352869 
>>2352821
Зависит от того, как ты работаешь с датами с сервером. Но в любом счёте тебе придётся отдельный компонент писать для этого "инпута". И отдельный компонент для отображения дат. И отдельный модуль для работы с датами.
Я датами исключительно как ISO-строками с таймзонами оперирую и это сразу срубает жирный пласт логики для сериализации между редукс-стором/клиентом/сервером/бд.
>>2352840
HTMLFormElement.reset()
Аноним 08/05/22 Вск 19:50:47 #496 №2352870 
>>2352869
>HTMLFormElement.reset()
мерси
Аноним 08/05/22 Вск 20:03:09 #497 №2352884 
>>2352870
А нифига,это для формы.
А если это просто текст в блоке?
Аноним 08/05/22 Вск 20:18:43 #498 №2352904 
>>2352884
В каком блоке? Все инпуты являются частью какой-либо формы.
Аноним 08/05/22 Вск 20:20:50 #499 №2352908 
>>2352904
Допустим есть div с фиксированными параметрами,и он пустой или есть дефолтное значение.
По ходу выполнения там что то изменяется.И что бы можно было сбросить до дефолта
Аноним 08/05/22 Вск 20:25:02 #500 №2352911 
>>2352908
>Допустим есть div с фиксированными параметрами,и он пустой или есть дефолтное значение.
Ты там высрал див заместо инпута и даже не знаешь, какое у него должно быть дефолтное значение? В таких костылях нет никаких бест практис, дефолтное значение определяется как писателю компонента взбредёт. Можешь хоть ошибку кидать для этого и обрабатывать её.
Аноним 08/05/22 Вск 20:27:56 #501 №2352912 
>>2352911
<div>
<p> 10 </p>
</div>

нужно кнопкой сбросить до дефолта в 0
так понятней?
Аноним 08/05/22 Вск 20:46:25 #502 №2352922 
button.addEventListener("click, () => {
throw new Error("reset")
})
Аноним 08/05/22 Вск 21:13:43 #503 №2352934 
>>2352731
А судьи ли? Я вот например нихуя о них не знаю, на основании чего они имеют право кого-то судить в этом мире. Ты знаешь?
Аноним 08/05/22 Вск 23:15:08 #504 №2352982 
ПОСОНЫ ПОСОВЕТУЙТЕ НА ЮТАБЧИКЕ КУРС ПО РЕАКТУ!!!
Аноним 09/05/22 Пнд 00:01:20 #505 №2352995 
Как называется психическая болезнь, когда ты пытаешься досконально изучить какую-то технологию или что-либо, сидишь и дрочишь его дебри, которые никто даже не знает, но если не изучишь это будешь чувствовать что знания неполноценны и поверхностны. Борюсь с этим уже второй год.
Аноним 09/05/22 Пнд 00:30:43 #506 №2353000 
>>2352995
>tfw прокрастинация встречает перфекционизм
Аноним 09/05/22 Пнд 00:37:08 #507 №2353004 
>>2352656
> А что ты хотел от майкрософт, дружок?
Так какого хуя это дерьмо форсят все, кому не лень? Я даже слышал, что его в компаниях используют.
Кучи положительных отзывов.
У же меня возникло стойкое ощущение, что этим людям или платят за рекламу этого кала или они просто скрипт-кидди, которые дальше хелловорда нечего не программировали.
Аноним 09/05/22 Пнд 04:49:52 #508 №2353023 
>>2352934
>Я вот например нихуя о них не знаю
Типичный пользователь продуктов от жидобрейнсов.
Аноним 09/05/22 Пнд 16:46:12 #509 №2353257 
ребят, а в ангуляре есть какой-то аналог MatDialog по созданию всплывающих окон для логина и регистрации?
Аноним 09/05/22 Пнд 16:59:15 #510 №2353269 
>>2353004
Бесплатно лучше ничего нет. Правда в чем проблема оплачивать сотрудникам вебшторм это вопрос, ведь зарплаты-то у людей не по 20-30к
Аноним 09/05/22 Пнд 17:15:34 #511 №2353280 
>>2352912
Ну так найди этот <p> и textContent сделай равным 0. В чем проблема?
Аноним 09/05/22 Пнд 18:04:33 #512 №2353337 
а мне вскод больше вебшторма нравится, я себе надыбал на пару месяцев и не пользуюсь нихуя, лень разбираться в интерфейсе
Аноним 09/05/22 Пнд 22:30:18 #513 №2353526 
image.png
Привет двачик. Пытаюсь вкатыватсья в жс, хочу написать расширение, которое, допустим, скрывает на странице все теги <img>. Набрасал такой код, но он не работает... Помогите пожалуйста
Аноним 09/05/22 Пнд 22:52:11 #514 №2353539 
>>2353526
https://developer.mozilla.org/ru/docs/Web/API/Window/DOMContentLoaded_event
Аноним 09/05/22 Пнд 23:31:10 #515 №2353571 
carbon.png
Поясните позязя, как оно работает.
Откуда в oninput-е оказывается переменная age с актуальными данными? Пытался нагуглить, но ничего не нашел. Причем оно работает только при инлайне. Если определять для формы oninput в отдельном JS-блоке, то начинает ругаться, что переменной age не определено.

<form name="myForm" oninput="console.log(age.value);">
<input type="number" name="age" value="10">
</form>
Аноним 10/05/22 Втр 00:34:25 #516 №2353612 
макака 1.gif
Итак, попробовал bootstrap, material ui, chakra ui.
И как я понял, любой готовый набор ui-компонентов используется ТОЛЬКО в случае, если нужно быстро накидать proof of concept ну или когда на дизайн вообще похуй и изменять его не планируется.

Во всех остальных случаях начинается лютый пердолинг, при КАСТОМИЗАЦИИ всей этой хуйни.

Стула получается только 2:
1) Быстро кидать проект с дефолтным невырвиглазным дизайном с помощью готовых стилизованных компонентов фреймворка
2) Писать ui-компоненты самотоятельно с нуля.

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

То есть блять, разница в том, что дизайн не просто перегоняется в условный css-файлик или еще какую хуйню, а создаются КОМПОНЕНТЫ для кнопок, инпутов, таблиц, и прочей хуйни. Использование аттрибута className в коде за пределами ui-компонентов должно быть сведено к минимуму.
Так?
Аноним 10/05/22 Втр 00:44:01 #517 №2353620 
>>2353612
Вариантов все еще три и все они используются одновременно
Аноним 10/05/22 Втр 06:42:08 #518 №2353658 
>>2353571
https://developer.mozilla.org/en-US/docs/Web/API/Document/forms#named_form_access
При инлайне работает, потому что там существует контекст формы с таким инпутом.
Аноним 10/05/22 Втр 08:54:49 #519 №2353661 
Анончики помогите с гитом плиз. Короче в своем приложении пилил фронт и там есть гит файл где делал коммиты. Потом начал пилить бэк и там свой отдельный гит файл завел и папку client с фронтом добавил в gitignore. Теперь хочу бэк с фронтом соединить но как сделать чтобы два гит репозитория не конфликтовали? Просто убрать client из gitignore и продолжать комитить только в одном репозитории игнорируя фронтовский?
Аноним 10/05/22 Втр 09:33:32 #520 №2353672 
Аноны, есть сеймы?
Боюсь кодить потому что кажется не справлюсь с задачей, однако все равно справляюсь. И это повторяется перед каждой новой задачей.
вкатун
Аноним 10/05/22 Втр 11:29:03 #521 №2353718 
>>2353672
У меня помимо этого есть страх, что я переоценю свои возможности и сделаю 70% задачи, застопорившись где-то сильно
Аноним 10/05/22 Втр 11:33:58 #522 №2353720 
>>2353672
все решения всех проблем уже есть в интернете + можно попросить помощи здесь, в тг, на работе
чего бояться можно? тебе 18 лет? хуею бля
Аноним 10/05/22 Втр 11:38:08 #523 №2353721 
>>2353720
>в тг
В смысле?
Аноним 10/05/22 Втр 12:03:33 #524 №2353733 
>>2353721
в чатах телеграма
Аноним 10/05/22 Втр 12:34:01 #525 №2353756 
>>2353661
Git modules.
Аноним 10/05/22 Втр 14:16:18 #526 №2353833 
>>2353539
Ну в общем скрипт работает, только если его запускать в консоли браузера. Я пробовал делать как в этой статье, но он просто не подрубается. Можешь объяснить что нет пожалуста? :(
Аноним 10/05/22 Втр 14:25:01 #527 №2353836 
>>2353833
Ты забыл сказать, под какой браузер расширение. Потом гуглишь документацию для этого браузера и там он должен предоставить расширению способ узнать, загрузилась ли страница или нет.
Аноним 10/05/22 Втр 14:26:13 #528 №2353837 
>>2353836
Олсо есть https://developer.mozilla.org/en-US/docs/Web/API/Document/images
Аноним 10/05/22 Втр 14:26:42 #529 №2353839 
>>2353838 (OP)
>>2353838 (OP)
>>2353838 (OP)
Аноним 10/05/22 Втр 16:05:50 #530 №2353915 
>>2353658
Вот где бы почитать про это. Про document.formName.elements я знаю, но вот инфы о том, как это становится доступно в инлайне напрямую - чет нигде не нахожу.
Аноним 11/05/22 Срд 19:27:12 #531 №2354840 
>>2353004
>этим людям или платят за рекламу этого кала
Поздравляю, ты теперь редпиллед.
Аноним 20/05/22 Птн 13:32:42 #532 №2359846 
>>2353915
Все работает без всяких инлайнов дурачок.
<form id="form">
<input type="" name="huy" value="pizda">
</form>
<script type="text/javascript">
let form = document.getElementById("form");
form.huy.addEventListener("input", ()=>{
alert(form.huy.value);
})
</script>
Аноним 12/06/22 Вск 21:25:23 #533 №2378243 DELETED
аноны, пиздeeц

сразy говорю, бyдy попрошайничать. На кота. (Два дня назад yжe писал сюда, один анончик отправил соточкy, и я в бан yлeтeл)
Зовyт Миша. Миxаил Алeксандрович. Молодой eщё, 2 годика.
Корочe, обнарyжили лeйкоз. Как я почитал, мeрзкая xрeнь. В общeм, нyжно пeрeливаниe крови. Донора нашёл, а дeнeг нeмного нe xватило.
1300 осталось найти.
Молю, аноны, помогитe.
55214ᅠ0037923ᅠ2235 (извинитe, что имeнно так написал, боюсь в бан yлeтeть...)

В общeм, eсли комy интeрeсно - в послeдниe дни Миша стал очeнь пассивeн, постоянно лeжал, eдy почти нe eл, только пил. Нy, дyмал я, пройдёт. Забил трeвогy только когда котофeй под сeбя сxодил в тyалeт. Помчался с ним в вeт.клиникy, там осмотрeли, взяли кровь на анализы (пик 1) и чeрeз дeнь обнарyжили лeйкоз. объяснили, что этy xyйню нe вылeчить, но при правильном yxодe котикy можно продлить жизнь. Я готов к этомy и морально, и матeриально, зп y мeня нормальная, но блeать, из-за того, что нe ожидал, что Миша ёбy так даст, дeнeг нeмного нe xватило, а зп только 20-го. а пeрeливаниe нyжно сдeлать как можно быстрee. И по словам доктора, и по видy понятно - постоянно лeжит, сам нe кyшаeт (приxодится со шприца дeтским питаниeм насильно), писяeт под сeбя. Нy и поxyдeл сильно на фонe этой xрeни...

И да, я понимаю, что сeйчас бан выxвачy (и скорee всeго, навсeгда), так что болee вас нe потрeвожy. yмоляю, аноны, xоть копeйкой помогитe пожалyйста.

comments powered by Disqus

Отзывы и предложения