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

JSThread #198 /js/

 Аноним 09/02/21 Втр 20:22:03 #1 №1935813 
16124769371520.png
Предыдущий тред: >>1930916 (OP)

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

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

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

Руководство для вката: https://developer.mozilla.org
Аноним 09/02/21 Втр 20:23:58 #2 №1935819 
ЖИДКО ПЕРНУЛ В ТРЕД, ОБМАЗАВ ВСЕМ НИЖЕ ОТПИСАВШИМСЯ ЛИЦО КАЛОМ
Аноним 09/02/21 Втр 20:24:57 #3 №1935822 
второй нах
Аноним 09/02/21 Втр 20:30:11 #4 №1935829 
В этих тредах нет толковых ребят.
Вы все тут неудачники.


Аноним 09/02/21 Втр 20:30:43 #5 №1935830 
ИТТ ПОСТИМ МУЗЫКУ ПОД КОТОРУЮ:
КОДИРУЕМ /ПИШЕМ КОД / ДЕПЛОИМ / ДЕБАЖИМ / РЕФАКТОРИМ / СМУЗИХЛЕБИМ

https://www.youtube.com/watch?v=4Vx_5ShWvic
Аноним 09/02/21 Втр 20:34:50 #6 №1935841 
>>1935830
https://youtu.be/m_SK1Gn63f0
Аноним 09/02/21 Втр 20:36:19 #7 №1935843 
Кочаны, хочу БД на JS, чтобы на клиентах с сервером синхронизировалась. Сама. Ну чтобы типо и на сервере (нода не обязательна) и на js клиенте была одна бд.
Есть что-то подобное?
Аноним 09/02/21 Втр 20:54:37 #8 №1935870 
>>1935843
websocket
Аноним 09/02/21 Втр 21:13:01 #9 №1935903 
>>1935870
Таблетки?
> 2k21
> websocket
Quic уже давно по умолчанию включен и работает.
Аноним 09/02/21 Втр 21:13:22 #10 №1935904 
Как же мне хуево блять, от того что я лютый говнокод пишу. Когда ебашу у меня просто нахуй отключается самокритика. Мне любой высер руками кажется 10/10 решением. На следующий день смотрю и мне хуево становится. Пиздец. Особенно когда смотрю на код других людей, у которых все красиво и всякие интересные решения. Есть способы начать писать лучше? Я раньше думал, что это вопрос практики, но оказалось, что нихуя. Либо у меня практики недостаточно.
Аноним 09/02/21 Втр 21:22:59 #11 №1935915 
>>1935903
Ты понимаешь зачем нужен quic и чем он отличается от ws? Если понимаешь, ты нахуя это высрал?
Аноним 09/02/21 Втр 21:23:14 #12 №1935917 
>>1935904
Всем поебать. Главное чтобы твой код отностилеьно эффективно свою задачу выполнял, сосредотачивайся на этом. Однозначные, проверяемые, функции, быстрые для тестирования, всё такое. Быстрота написания говнокода это тоже одна из задач.
Аноним 09/02/21 Втр 21:24:02 #13 №1935920 
>>1935915
Долбоеб, я про БД говорил, нахуй ты вообще про вебсокеты серанул, шизло?
Аноним 09/02/21 Втр 21:35:18 #14 №1935934 
>>1935920
Хуя ты токсик. Зачем что-то спрашиваешь вообще?
Аноним 09/02/21 Втр 21:43:27 #15 №1935949 
>>1935920
БД у тебя по воздуху общаться будут на сайдах?

Впрочем, следуй нахуй смело.
Аноним 09/02/21 Втр 21:50:32 #16 №1935956 
>>1935904
недостаточно практики
я тоже пишу говно код, раз в неделю я улавливаю мозгом фичу которкую использую в своем говнокоде, и говнокода становится меньше

Больше ебашь - больше опыта будет
Аноним 09/02/21 Втр 21:55:05 #17 №1935958 
>>1935934
> шизло говорит про вебсокеты, хотя вопрос был про бд
> ну ниназывайте меня ебанутым

>>1935949
Причем тут вебсокеты, шизло? Это протокол связи, а не бд.
Sooqa, ты это тупостью тролишь или что?
Аноним 09/02/21 Втр 22:07:33 #18 №1935969 
>>1935958
Животное, выйди из треда нахуй. Раз ты такой умный - сам со всем разберёшься.
Аноним 09/02/21 Втр 22:17:07 #19 №1935979 
>>1935969
> тупое животное, спутавшее вебсокет с бд, называет кого-то животным
Кек
Аноним 09/02/21 Втр 22:31:32 #20 №1935989 
image.png
>>1935843
>БД на JS, чтобы на клиентах с сервером синхронизировалась
Аноним 09/02/21 Втр 22:33:33 #21 №1935991 
>>1935904
Сначала заставляешь код работать вы здесь, потом рефакторишь его, потом комитишь
Аноним 09/02/21 Втр 22:54:46 #22 №1936003 
>>1935989
}{ммм. Ну я помню об этом (поуч + коуч), но почему-то не рассматривал этот вариант. Нужно чекнуть еще раз, спосибо.
Аноним 09/02/21 Втр 23:32:46 #23 №1936020 
>>1935979
Я не спутал, я ответил тебе по существу.
Аноним 09/02/21 Втр 23:36:19 #24 №1936022 
>>1936020
Бд это не вебсокеты. Вебсокеты это связь. Бд это хранение и нормализация. Ты понимаешь это?
Аноним 09/02/21 Втр 23:48:16 #25 №1936033 
>>1936022
И что? ты в любом случае должен быть постоянно держать связь с бэком.
Просто найди любую real-time БД и не выёбывайся.
Аноним 09/02/21 Втр 23:51:51 #26 №1936039 
конечно же я понимаю, что вебсокет - это протокол, но ключевой момент в твоём вопросе - это синхронизация, что какбэ подразумевает под собой связь с сервером.
Если БД будет сразу на двух слоях - тогда это нарушаеет ACID принципы. (про CAP-теорему можешь мне напоминать)
Аноним 10/02/21 Срд 00:25:59 #27 №1936060 
>>1936033
> связь
Вопрос о связи вообще не стоит. У меня несколько протоколов к тому же, начиная с удп, кончая квиком.
> Просто найди любую real-time БД и не выёбывайся.
Но я хочу выебываться! ну подумаешь ебанутый, что тут такова
Для реалтайма и всякого такого отдельный сервер написан частично написан, ебанутые не могут писать код и на клиенте пуре-жс-инмемори функции.

>>1936039
> это синхронизация
Не, синхронизация это чисто синхронизация локальной и серверной бд. В этом смысол. Хз может я туповато написал, похуй.
Это нужно чтобы проще было, чтобы меньше кода писать, легче объектами управлять, создавать инмемори слои, проще делать реактивность.
> Если БД будет сразу на двух слоях - тогда это нарушаеет ACID принципы. (про CAP-теорему можешь мне напоминать)
Читал только про ацид. Да, согласованность тут нарушается. Шо я тут подумал.
В каждом отдельном случае согласованность буду делать руками. Перед одними данными приоритет будет иметь клиент, перед другими данными сервер, в некоторых случаях будет дублирование, в некоторых случаях пользователь сам будет решать. Конечно будет нужна обработка потерянных данных. Не уверен что это возможно в коуч+поуч, но вероятнее всего это возможно и сделать можно.
Скорее всего, то что я описал, это классическая реализация различных нарушений согласованности и так делают фсе.
Кластерная согласованность это уже отдельная хуиточка и скорее всего её тоже как-то можно сделать руками и там безусловно будут потери.
Аноним 10/02/21 Срд 01:42:19 #28 №1936183 
>>1935904
Везет тебя. У меня вообще 90% кода тупа спизжено откуда-то. Остальные 10% чисто мой напильник. Вот от этого действительно не очень. Правда я только вторую неделю учу.
Аноним 10/02/21 Срд 02:21:06 #29 №1936211 
При использовании контекста компонент, который принимает контекст, всегда ререндерится полностью? Этого никак не избежать при использовании контекста?
Аноним 10/02/21 Срд 02:37:15 #30 №1936216 
>>1935904
Частенько по неопытности и из-за лени пишу говнокод, а рефакторю его позже.
Но с опытом, когда пишешь после нечто похожее - пишешь збс уже с первого раза, т.к. просто уже знаешь как.
Аноним 10/02/21 Срд 02:42:11 #31 №1936218 
Всем доброго времени суток. Решил устроиться на свою первую проектную подработку параллельно с основной работой, меня спросили, сколько беру за час, сказал, что 400 руб. Не продешивил? А то нет опыта в таких делах, прикинул, что на основной около 300 получаю. Решил немного накинуть, чтобы не борзеть, но интересно узнать у более знающих анонов (работа не сложная - формошлепство на реакт/тс)
Аноним 10/02/21 Срд 03:14:48 #32 №1936221 
Как можно предотвратить ререндер элементов, созданных с помошью map? К примеру есть список товаров, который пользователь добавил к себе в корзину. Из этого списка с помошью map генерится список элементов на странице. Внутри каждого элемента есть свой счетчик, чтобы можно было увеличить количество товара. Проблема в том, что список этих товаров хранится в родительском компоненте, и каждый раз, когда я обновляю счетчик любого из товаров в списке, это счетчик изменяетс состояние у родителя, объект с товарами у родителя меняется, снова возвращается в дочерний элемент, который все это отображает и разумеется, это всё заставляет map пересобираться еще раз только из-за того, что количество товара увеличилось на одну еденицу, и из-за этого у меня обновляется еще раз картинка, имя товара и все остальное, только из-за того, что увеличилось поле "количество". Что с этим можно сделать? Как можно создать список товаров только один раз, а потом работать с ним так, как будто бы это уже настоящие jsx элементы, которые я как будто создал собственноручно, и которым уже не нужно пересобираться? Проблема в том, что товаров этих в дальнейшем может быть сколько угодно, и мне каким-то образом очевидно нужно всё таки этот список изначально сгенерировать. А вот потом уже можно было бы у этого списка обновлять только какие-то отдельные данные, не перерендеривая весь компонент со списком целиком. Как это вообще делается обычно? Когда пропсы не приходили сверху и хранились только в самом компоненте, этой проблемы не было. А тут из-за обновления пропсов обновляется и map, от них зависящий. Пиздец написал как дебил, но надеюсь вы поняли
Аноним 10/02/21 Срд 03:37:58 #33 №1936225 
>>1936218
Если ты совсем зеленый и без опыта, то не продешевил.
Зато после того, как набьешь шишке и поймешь, что к чему, сможешь релевантно оценивать свой ценник и уже примерно прикидывать сколько стоишь.

Если не тупой, и разработаешься, то через месяцок сможешь смело поднимать ценник в двое.
Аноним 10/02/21 Срд 03:45:28 #34 №1936227 
>>1936218
>>1936225
Лол, я примерно месяц назад на удаленку устроился за 200р в час. Но у меня вообще опыта 0, я только учился до этого, а тут хотя бы за деньги.
Аноним 10/02/21 Срд 03:49:55 #35 №1936228 
>>1936221
Храни товары в стейт-менеджере.
Контекст(как пример) позволяет лишь избежать проп-дриллинг, он не решает проблему нормализации и управления состоянием.
Отображать весь список товаров на странице - плохая практика.
Фильтруй товары/используй пагинацию/бесконечную прогрузку в таком случае.
Аноним 10/02/21 Срд 04:00:45 #36 №1936229 
>>1936228
>Отображать весь список товаров на странице - плохая практика.
Их очень мало, тут нечего фильтровать. Да и это не было бы проблемой. Сайт совсем небольшой, думал может быть без стейт менеджера можно было бы обойтись.

Сейчас попробовал заменить стандартный компонент Image у некста, и сука, блядь он начал обновлять список товаров вообще без каких-то заметных внешних изменений.
Аноним 10/02/21 Срд 05:39:22 #37 №1936241 
>>1936211
При использовании контекста ререндерятся все потомки, в которые этот контекст обёрнут.
Аноним 10/02/21 Срд 06:53:37 #38 №1936257 
>>1936241
В которые обернут провайдер или консьюмер? Если у меня контекст на самом верху, у меня вообще всё приложение ререндерится будет? А если пропсдриллить?
Аноним 10/02/21 Срд 07:05:14 #39 №1936265 
>>1936257
Заебал выучи хотя бы редакс и мемоизацию
Аноним 10/02/21 Срд 07:06:22 #40 №1936266 
>>1936257
>В которые обернут провайдер или консьюмер?
Очевидно же, что провайдер.
>Если у меня контекст на самом верху, у меня вообще всё приложение ререндерится будет?
Да, именно поэтому не стоит пихать в глобальный контекст таймеры и вообще всё, что часто обновляется.
>А если пропсдриллить?
Та же проблема, только ещё и пропсы у всей цепочки компонентов засираются.
Аноним 10/02/21 Срд 07:17:09 #41 №1936270 
>>1936257
ну вот эту проблему решает стейт-менеджер
разделяешь глобальный стор на стейты и передаешь компонентам только нужные куски стора, тогда будет ререндерится только то, за кем ты следишь
Аноним 10/02/21 Срд 07:42:37 #42 №1936276 
>>1936270
>>1936265
Жаль, что в редаксе неудобно мемоизацию делать, без реселекта будут лишние ререндеры на каждый пук
Аноним 10/02/21 Срд 07:44:28 #43 №1936277 
>>1936270
>>1936266
>>1936265

Да знаю я редакс, проблема была не в этом. Уже решил все переделать на редаксе. Просто не знал про такую проблему стейт менеджмента без стейт менеджеров. Нахуя тут тогда в треде говорили, что не нужно всегда использовать стейт менеджеры? Нашел кого слушать на дваче конечно, понимаю
Я тут просто недавно рассказывал о том, что мне в тестовом дали задание, сделать приложуху без стейт менеджеров, и я бомбил с того, что нахуя это вообще нужно, а меня тут в треде переубеждали.
Аноним 10/02/21 Срд 07:59:55 #44 №1936282 
>>1936276
Хз юзаю конект, хуки нахуй выкинул, вроде нормально
Аноним 10/02/21 Срд 08:00:55 #45 №1936285 
image.png
Сап.
Вот есть задача написать хуевину которая будет рендерить модальное окно с выбором способа оплаты, далее ввод данных, их подтверждение и непосредственно оплата на стороне сбера после ответа сервака. В общем сейчас написал один класс с хуевой тучей методов который все это делает. Сейчас хочу сделать рефакторинг, разбить по разным классам выполняющие весь функционал независимо в котексте объекта с данными. Правильно ли я пишу вообще? Вроде бы в голове есть понимание что и где нужно, но в наследовании не очень из-за чего довольно таки сложно передать результат одного метода в другой.
Аноним 10/02/21 Срд 08:10:42 #46 №1936288 
>>1936277
>>1936221
Не понимаю вообще, а разве браузеры и всякие реакты настолько тупые, что рендерят всех родителей? Че эт за хуйня вообще? Мне кажется эту проблему еще в 2017 гожу решили, даже как-то не задумывался над этой хуйней.
Аноним 10/02/21 Срд 08:13:14 #47 №1936289 
>>1936285
> с выбором способа оплаты, далее ввод данных, их подтверждение и непосредственно оплата на стороне сбера после ответа сервака.
Это вообще одна функция строчек на 5, которая берет ввод и отправляет куда нужно.
Офк, интерфейс отдельно.
Аноним 10/02/21 Срд 08:19:47 #48 №1936290 
>>1936257
Все приложение ререндерится не будет, только те компоненты которые подписаны на контекст. К сожалению, сейчас нельзя подписаться на часть контекста и это ключевое отличие от редакса. Но useSelectedContext уже пилят.
Аноним 10/02/21 Срд 08:21:50 #49 №1936291 
>>1936288
>>1936282
Надо всё равно мемоизированные селекторы писать чтобы чилдрены подписанных компонентов не ререндерились когда меняется стейт, на который не было подписки
Аноним 10/02/21 Срд 08:23:24 #50 №1936292 
>>1936221
С эти не надо делать ничего. Реакт так работает, это нормально. Про ключи главное не забывай.
Аноним 10/02/21 Срд 08:25:03 #51 №1936293 
>>1936218
Продешевил, $5 баксов это рейт помоечного индуса на неквалифицированной работе.
Аноним 10/02/21 Срд 08:25:51 #52 №1936294 
>>1936277
>Просто не знал про такую проблему стейт менеджмента без стейт менеджеров.
Это проблема существует и во флюксах, так как связана со скоупами, а не реактом.
>Я тут просто недавно рассказывал о том, что мне в тестовом дали задание, сделать приложуху без стейт менеджеров, и я бомбил с того, что нахуя это вообще нужно, а меня тут в треде переубеждали.
Так это проверяли, как состояние разбиваешь. Вангую, что на каждый пук экшон в редаксе делаешь и хранишь референсы вообще на всё.
>>1936285
Какие классы? Хуярь модульные функции и не выёбывайся.
Аноним 10/02/21 Срд 11:54:26 #53 №1936384 
>>1936291
в ререндерах ничего страшного нет, если не видишь потерю производительности явно, реакт заоптимизирован под это дело
Аноним 10/02/21 Срд 11:59:52 #54 №1936391 
react.jpg
>>1936384
>реакт заоптимизирован под это дело

лол
Аноним 10/02/21 Срд 12:08:57 #55 №1936399 
>>1936391
>кидает какую-то вырванную из контекста частную статистику с синтетическими примерами, которые ничего не показывают
читай полностью, что я написал, ты не почувствуешь эту разницу
нормальные люди виртуализируют списки, если они большие
Аноним 10/02/21 Срд 12:38:32 #56 №1936432 
mobx
Аноним 10/02/21 Срд 12:40:17 #57 №1936436 
>>1936399
>нормальные люди виртуализируют списки, если они большие

При виртуализации перерисовок еще больше чем без неё.
Аноним 10/02/21 Срд 12:43:51 #58 №1936440 
>>1936436
оптимизации не бесплатны
Аноним 10/02/21 Срд 12:56:17 #59 №1936463 
>>1936436
Что ты вообще понимаешь под «перерисовкой»? Реакт не оперирует таким понятием.

В целом, проблема высосана из пальца, у Реакта нормальная производительность при работе со списками. И уж тем более с виртуализацией.
Аноним 10/02/21 Срд 12:58:39 #60 №1936472 
>>1936463
>под «перерисовкой»
РЕРЕНДЕРИНГ, так понятней, макакен, или ты уже совсем русский язык забыл?
>Реакт не оперирует таким понятием.
Ясно.
Аноним 10/02/21 Срд 13:09:01 #61 №1936504 
>>1936472
Ну и хули что твой высер лишний раз ререндерился? Ебать это уже пахнет фпс дрочевом, сука это сраная страница которая запускается на устройсвах с 16гб оперативы и почти столько же видеопамяти, на безлимитных тарифах. Вы ебанутые?
Аноним 10/02/21 Срд 13:14:58 #62 №1936522 
>>1936504
Что хули, дегенерат? Ты перечитай цепочку постов. Началось всё с обсуждения того как уменьшить количество перерисовок. Кто-то пукнул о виртуализации, что вообще никак не уменьшает количество этих перерисовок, я об этом сказал. Теперь пришел ты, долбоеб который не знает что ререндеринг === перерисовка, насрал себе в штаны и начал уводить разговор на тему "И ШТО ШТО ЛИШНИЙ РАЗ ПИРИРИСОВЫВАИЦА!!?" Да ничего, мне вообще похуй, вопрос был 'как уменьшить количество перерисовок', вот в рамках этого вопроса и ведётся обсуждение.
Аноним 10/02/21 Срд 13:19:07 #63 №1936534 
>>1935813 (OP)
>Для программирования на HTML https://jsfiddle.net
Всем меня устраивает, хоть и консоль там подключается через скрипт. Но есть ли какая-то возможность настроить подсветку синтаксиса? В идеале бы конечно прям панель, где показана текущая настройка - название и цвет, и чтобы я мог каждую поменять.
Или может есть какой-то оффлайн вариант этой программы, но чтобы принцип интерфейса сохранялся
Аноним 10/02/21 Срд 13:19:26 #64 №1936535 
>>1936522
>как уменьшить количество перерисовок
узнать, в каких случаях эти перерисовки происходят и выяснить, что можно предпринять, чтобы их уменьшить
даю подсказку: внутренний стейт и пропсы
Аноним 10/02/21 Срд 13:20:57 #65 №1936538 
>>1935830
https://www.youtube.com/watch?v=tV7xNtLD1wM
Аноним 10/02/21 Срд 13:24:12 #66 №1936542 
>>1936432
Хто ты?
Аноним 10/02/21 Срд 13:44:20 #67 №1936567 
>>1936472
Перерисовка это drawing, совершенно другой процесс, а рендеринг это рендеринг. Придумываешь какую-то левую терминологию, а потом бахаешь что ее никто не знает.

Повторные рендеры вообще не являются проблемой и слабо влияют на производительность.
Аноним 10/02/21 Срд 13:47:24 #68 №1936572 
>>1936534
Используй https://codesandbox.io, он может практически все и редактор там более продвинутый.

Думаю заменю фиддл на него на следующем перекате.
Аноним 10/02/21 Срд 13:49:04 #69 №1936578 
D15nDdIXQAARONJ[1].jpg
>>1936567
Готов слушать твои оправдания.
Аноним 10/02/21 Срд 13:49:21 #70 №1936579 
>>1936522
>как уменьшить количество перерисовок
Нинужно. Почему? Читай выше
Аноним 10/02/21 Срд 13:56:27 #71 №1936599 
>>1936578
Я уже все написал, попробуй перечитать пост еще разок. Если тебе хочется запутывать людей левой терминологией — не буду мешать.
Аноним 10/02/21 Срд 15:44:51 #72 №1936758 
>>1936599
Он все правильно говорит. Рендиринг это именно отрисовка.

Аноним 10/02/21 Срд 15:46:41 #73 №1936760 
То, что в реакте (да и вообще во многих других шаблонизаторах) стали использовать термин рендеринг, фактически для процесса компиляции и свеления, это проблемы разраьотчиков этих библиотек, а не терминологии.

Аноним 10/02/21 Срд 15:52:30 #74 №1936766 
Как мне указать тип стейта в реакте?
Есть:
const [state, setState] = useState([]);
Тип сетСтейт определяется автоматически, мне нужно указать тип state. Пробовал [state: type[], setState] - не сработало.
Аноним 10/02/21 Срд 16:00:53 #75 №1936772 
>>1936766
Setstate задает начальное состояние котрое по сути хранится в твоем случае в state, если законсолишь state там у тебя будет массив
Аноним 10/02/21 Срд 16:01:44 #76 №1936773 
>>1936772
Сука проебался с useState
Аноним 10/02/21 Срд 16:09:08 #77 №1936782 
1.png
>>1936772
>если законсолишь state там у тебя будет массив
Ага массив. Any[]. А мне надо этот массив типизировать, сказать, что это не просто массив, а массив собачьих залуп eldaky30metrov[].
Аноним 10/02/21 Срд 16:14:28 #78 №1936786 
>>1936766
Через генерик обвс: const [state, setState] = useState<string[]>([]);
Аноним 10/02/21 Срд 16:35:12 #79 №1936797 
>>1936786
Ага, спасибо.
Аноним 10/02/21 Срд 16:39:11 #80 №1936803 
>>1936758
Ну не совсем.
Рендеринг это комплексная фаза, перед тем, как браузер что-то отрисовывает - он должен перед этим достаточно много чего вычислить. Так например этим useEffect и отличается от useLayoutEffect - useEffect выполняется до фактического рендера, а useLayoutEffect ждёт, пока в DOM всё перевычислится и только потом этот эффект выполняется.
мимо
Аноним 10/02/21 Срд 16:50:32 #81 №1936814 
Анон, нужно сохранить массив в БД с помощью JS. Как можно взаимодействовать с БД H2 или postgeSQL
с помощью JS? Как я понял JS не предполагает работу с данными на диске. БД локальная.
Аноним 10/02/21 Срд 16:52:28 #82 №1936817 
>>1936814
Ищи плагин к ноде для своей ДБ. Если сервер не на ноде, то ты чо ебанутый? Откуда ты в базу писать собрался? С фронта?
Аноним 10/02/21 Срд 16:58:55 #83 №1936823 
>>1936817
Вот именно что нужно с fronta. Я не ебанутый, тестовое задание на собес такое.
Аноним 10/02/21 Срд 17:01:02 #84 №1936827 
1.png
>>1936823
Сабж.
Аноним 10/02/21 Срд 17:02:05 #85 №1936829 
>>1936827
эт на кого вакансия?
Аноним 10/02/21 Срд 17:03:33 #86 №1936831 
>>1936829
Судя по заданиям для первоклашек - на дебила.
Аноним 10/02/21 Срд 17:05:32 #87 №1936836 
>>1936831
Джун у нас в мухосрани. Понятно, что на дебила.
А что за дичь с сохранением в БД.
Аноним 10/02/21 Срд 17:06:07 #88 №1936839 
>>1936831
Типо да, задания легкие. Если бы я знал какую-нибудь реляционную БД, вместо монго, то я бы прямо сейчас к ним мог закатиться.
Но блять. Они уверены, что хотят с фронта писать прямо в БД, а не посылать данные на сервер, чтобы сервер уже сам там разбирался? Что это за шарага? Или я не прав?
Вкатун
Аноним 10/02/21 Срд 17:06:43 #89 №1936840 
>>1936839
>>1936836
бля парни вы че тролите
Аноним 10/02/21 Срд 17:07:28 #90 №1936841 
>>1936839
А может это типо наебалово такое? Проверить, кто сообразит, что что-то тут не так и расскажет почему так делать нельзя, а кто без задней мысли побежит хуячить.
Аноним 10/02/21 Срд 17:08:21 #91 №1936844 
>>1936840
Обоснуй.
Аноним 10/02/21 Срд 17:09:29 #92 №1936845 
>>1936844
бля иди на хуй дебил
Аноним 10/02/21 Срд 17:11:53 #93 №1936851 
>>1936845
Да ты заебал, блядь. Не все тут такие подкованные как ты (ну или каким хочешь казаться).
Есть вопрос, если можешь помочь - ответь по существу. Не можешь/не хочешь, лучше помолчать тогда, не?
Аноним 10/02/21 Срд 17:12:54 #94 №1936853 
>>1936851
ты что охуел мне рот затыкать пидор? ты дебил блядь
Аноним 10/02/21 Срд 17:16:09 #95 №1936858 
>>1936839
>>1936841
>>1936836
Я предполагаю, что под БД они имеют ввиду именно БД. Ведь БД это не язык программирования строго говоря.
Аноним 10/02/21 Срд 17:22:02 #96 №1936861 
>>1936858
Ебать, типа создать БД и сохранять результаты сортировки в ней,
отдельно от фронта? То есть вопрос на умение создавать и пользоваться СУБД?
Аноним 10/02/21 Срд 17:24:07 #97 №1936868 
>>1936861
Ага. Кидаешь им архив с проектом, внутри БД - они запускают его, БД инициализируется.
А вообще, такое ТЗ подразумевает о том, что аналитиков в компании нет, как и нормального ПМа, а значит нормального опыта ты там не получишь.
Аноним 10/02/21 Срд 18:01:17 #98 №1936885 
>>1936827
Нигде в задании не написано что надо прямо с фронта в бд писать. Они же ждут классическую трехзвенную поебень
Аноним 10/02/21 Срд 18:09:24 #99 №1936890 
>>1935989
Нашел почему поучДБ не хотел использовать.

Она весит 30кб. Это оче дохуя и очень много лишнего кода. Как стейт её не получится использовать, а я в том числе хотел заменить стейт и прокладку до индексдб, если возможно это был один из пунктов тз на 20 страниц, хуй найдешь
Аноним 10/02/21 Срд 18:15:19 #100 №1936893 
>>1936890
>30кб
>очень дохуя
проиграл
Аноним 10/02/21 Срд 18:26:01 #101 №1936903 
>>1936893
В смысле, типичноприличный стейт это меньше 1кб кода.
Конечно может поучдб и не все 30кб логики хуярит при каждом запросе, но всё равно для стейта слишком жирно. Наверное. Тестов-то я не делал.
Аноним 10/02/21 Срд 19:44:07 #102 №1936975 
Кто-нибудь пользовал Zustand в связке с некстом? Не сосну? Или лучше по старинке на редухе?
Аноним 10/02/21 Срд 20:20:54 #103 №1936993 
>>1935904
1) Хороший код не пишется, а только переписывается из ранее написанного тобой говнокода
2) Эффективное переписывание(рефакторинг) невозможно в принципе без тестов
Так что три буквы для тебя: TDD
Аноним 10/02/21 Срд 20:38:46 #104 №1937006 
>>1936993
>Так что три буквы для тебя: TDD
Интересно было бы послушать прохладные истории как ты пишешь Реакт-компоненты по TDD. Может даже код покажешь?
Аноним 10/02/21 Срд 20:47:13 #105 №1937015 
>>1936993
>Хороший код не пишется, а только переписывается
Переписывается хороший код только в том случае, если ты узнал что-то новое, иначе ты перепишешь тот же самый говнокод.
Аноним 10/02/21 Срд 21:00:28 #106 №1937030 
>>1936890
>>1935843
Подумал еще больше и понял следующее.
Вприцнипе нужен горячий сервер с суперфастбд, с архивацией всего в копоуч, это и так понятно было. Но!
Нихуя нипанятна до какого уровня можно покоуч использовать как замену реалтайма, можно ли кпоуч использовать для чатов, например. Или для стейта на клиенте. С одной стороны да, есть и уведомления и подписки, с другой стороны хз.

Хуле сложно-то так блядь, инфы и тестов почти нет, неужели таким вообще никто не занимается?
Аноним 10/02/21 Срд 21:06:41 #107 №1937037 
image.png
>>1937006
>как ты пишешь Реакт-компоненты по TDD
Скорее вопрос, в чем именно по-твоему заключается проблема с тестированием реакт-компонентов через TDD, когда все, что тебе нужно, это две либы:
https://github.com/jsdom/jsdom
https://github.com/testing-library/react-testing-library
>Может даже код покажешь?
Пик. И это тестирование целой страницы с роутингом и глобальным стейтом, отдельные компоненты тестировать в сто раз легче, просто рендеришь и тыкаешь куда надо эвентами.
Аноним 10/02/21 Срд 21:10:29 #108 №1937038 
>>1937015
>>1936993
Это только в этом итт треде, пока вы малолетние, можете переписывать что-то там. Ирл есть набор тестов и ТЗ для класса/функции, оно пилится до состояния "ну вроде работает" и забивается громадный хуй.
Никто это не переписывает и никто в код даже не заглядывает потом. Если это не библиотека, над которой трудится отдельный отдел/персонал.
В идеале достаточно научиться писать без протечек памяти и достаточно быстроработающий говнокод. Большее не требуется.

>>1937037
У тебя не тестирование, а хуйня какая-то.
Для нормальных тестов вместо params идёт отдельная либа, которая выдает все вариации логина-пароля, например. И проебанных данных. И кучу других вещей.
Аноним 10/02/21 Срд 21:14:49 #109 №1937040 
>>1937030
Нет, все сидят на графкл подписках или просто вебсокетах и данные кладут в стейт и персистят его если надо. Ни у кого модель стейта не совпдает с респонсами, так что не получится автомагически взять и синхронизироваться с 12 микросервисами.

Вот тебя зачем локально бд? У тебя интернета нет или дата-хэви апп?
Аноним 10/02/21 Срд 21:17:28 #110 №1937042 
>>1937038
>я пишу говнокод, а значит все пишут говнокод, по-другому нельзя, а кто говорит, что у него по-другому, тот выдумывает
Классика.
>отдельная либа, которая выдает все вариации логина-пароля
Какие вариации логина-пароля ты собрался тестировать на стандартной странице логина с одной формой, которая просто берет от юзера имейл/пароль и отправляет их на сервер? И главное зачем?
Аноним 10/02/21 Срд 21:27:18 #111 №1937054 
>>1937040
ИГОРЬ делаю. И хочу чтобы половина реалтайм говна, вроде чатов, была в бд и имела отдельный протокол свзяи. И чтобы как можно меньше либ было, не хочу поддерживать тысячи говна.
> Вот тебя зачем локально бд? У тебя интернета нет или дата-хэви апп?
Хранить стейт локально это хорошая практика. Загружаться будет быстрее, потом прост обновление.
Аноним 10/02/21 Срд 21:28:03 #112 №1937055 
>>1937037
Ок, так я и думал в общем-то. Тесты вместо тайпскрипта?
Аноним 10/02/21 Срд 21:30:44 #113 №1937058 
>>1937042
> Классика.
Ну правда же, все пишут говнокод. Чтобы написать неговнокод, нужно подумать, а на это не всегда время есть, потому что задач дохуя.
> Какие вариации логина-пароля ты собрался тестировать на стандартной странице логина с одной формой, которая просто берет от юзера имейл/пароль и отправляет их на сервер?
Все вариации. В том числе отсутствие вариаций.
> И главное зачем?
Потому что это называется тестирование. То что у тебя на скрине - не тестирование, а хуйня.
Аноним 10/02/21 Срд 21:31:21 #114 №1937059 
>>1937055
Типизация не может заменить тесты ни в каком ключе, тесты функционала же полностью заменяют любые проверки типов.
Аноним 10/02/21 Срд 21:32:46 #115 №1937061 
>>1937059
Да, я понял твою позицию (я с ней не согласен, но дискутировать не хочу).
Аноним 10/02/21 Срд 21:34:46 #116 №1937066 
>>1937061
>>1937055
Так-то он прав, тестирование (нормальнео всмысле) проверяет в том числе типизацию. Не ошибся ли в типах.
Аноним 10/02/21 Срд 21:35:07 #117 №1937067 
>>1937058
>Чтобы написать неговнокод, нужно подумать, а на это не всегда время есть, потому что задач дохуя.
Что-то уровня "чтобы ходить, нужно встать на ноги, а на это не всегда есть время".
>Все вариации. В том числе отсутствие вариаций.
Все - какие? Перечисляй, а не в воду пукай. "Отсутствие вариаций" - это отправка двух пустых строк на сервер, и от отправки заполненных строк с точки зрения клиента этот случай не отличается никак.
Аноним 10/02/21 Срд 21:39:04 #118 №1937069 
>>1937059
Только вот тестами покрывать всё, о чём за тебя думает готовый ТС, можно до нового года.
Аноним 10/02/21 Срд 21:40:39 #119 №1937072 
>>1937066
Такая формулировка неверна, потому что любители типов ее воспринимают как "надо написать тесты, что не вычитаешь число из строки, а зачем мне это писать в тестах, если я могу указать тип в коде". Тесты не проверяют типы как таковые, они проверяют функциональность(логику) приложения. И если ты продемонстрировал, что твое приложение выполняет все требуемые от него функции без ошибок, то тебе не нужно еще дополнительно демонстрировать, что внутри где-то не затесалось вычитание числа из строки.

И как я и сказал, первый любитель типов, полностью мисинтерпритировавший концепцию тестирования уже тут как тут >>1937069
Аноним 10/02/21 Срд 21:51:37 #120 №1937077 
>>1937067
> Что-то уровня "чтобы ходить, нужно встать на ноги, а на это не всегда есть время".
Такова практика в фирмах. Иногда вместо тестов делают твой говнотест, например. Это нормально. Потому что всем похуй, в основном.
> Все - какие? Перечисляй, а не в воду пукай.
Что какие? Поехал что ли, ты хоть что-то про тесты знаешь? Отсутвие @, исключения всякие, малое кол-во символов, большое, тестирование роутеров и переадресаций, тестирование формы с разных страниц (если модальная).
Всё это должно быть в тестах.
> "Отсутствие вариаций" - это отправка двух пустых строк на сервер, и от отправки заполненных строк с точки зрения клиента этот случай не отличается никак.
А тут будет тестирование ответа сервера, это уже другое.
Аноним 10/02/21 Срд 22:06:32 #121 №1937087 
>>1937072
> Тесты не проверяют типы как таковые
Проверяют.
> они проверяют функциональность(логику) приложения
Это отдельные тесты.
> тебе не нужно еще дополнительно демонстрировать, что внутри где-то не затесалось вычитание числа из строки.
Для этого есть автотесты.
Аноним 10/02/21 Срд 22:08:51 #122 №1937093 
>>1937077
>Отсутвие @, исключения всякие, малое кол-во символов, большое, тестирование роутеров и переадресаций, тестирование формы с разных страниц
Смешались кони, люди... Зачем ты собрался пихать в интеграционный тест для страницы проверку низкоуровневой логики валидации или уж тем более навигации(которая является заботой соответствующей либы и самого браузера почти на 100%)? Там тестируется конкретная вещь - в приложении есть страница логина, и если на нее перейти и засабмитить форму, то отправятся данные на сервер, и в случае успешного ответа юзер будет залогинен и перенаправлен на главную страницу.
Аноним 10/02/21 Срд 22:10:11 #123 №1937096 
>>1937093
> Там тестируется конкретная вещь
Никто так тесты не пишет. Это говноедство и ебланство.
Аноним 10/02/21 Срд 22:14:25 #124 №1937100 
>>1937096
Говноедство и ебланство - это как раз тестировать логику валидации имейла через интеграционный тест или боже упаси через браузерный системный тест на собранном приложении.
Аноним 10/02/21 Срд 22:43:55 #125 №1937133 
Untitled.png
Какой самый простой прикладной алгоритм для определения половины прямоугольника, куда попала точка? Все координаты известны, прямоугольник всегда рассечён по диагонали и может иметь произвольные размеры.
Аноним 10/02/21 Срд 22:56:56 #126 №1937148 
1.png
>>1937133
По-моему, само простое вот это. Сумма длин коричневых линий против суммы длин синих.
Аноним 10/02/21 Срд 23:02:52 #127 №1937154 
>>1937133
https://www.geeksforgeeks.org/check-whether-a-given-point-lies-inside-a-triangle-or-not/
Аноним 10/02/21 Срд 23:04:08 #128 №1937157 
1558827090627.png
>>1937100
> ну это не тестирование обоссаное
> это просто особое, интеграционное, тестирование, которое проверяет ничего!
Ясно-ясно. Уволеннах.

>>1937133
Пикрелейтед.
Аноним 10/02/21 Срд 23:15:42 #129 №1937161 
>>1937157
Дурачок не знает даже, что существуют разные типы тестов с разными скоупами, а уже увольнять кого-то собрался.
Аноним 10/02/21 Срд 23:25:43 #130 №1937167 
>>1937161
Да похуй вообще, если ты пишешь тест и не проверяешь в нём на инвалид - это хуевый, бесполезный и бессмысленный тест.
Даже архитектура теста хуевая у тебя, типичный стиль говнокодера с зашитыми в код строками(притом ты сам что-то говорил про говнокод).
Почитай хотя бы парочку книжек как тесты делают, если сам допереть не можешь.
Аноним 10/02/21 Срд 23:33:01 #131 №1937173 
>>1937148
Это было бы справедливо для квадрата, а на прямоугольнике фейлится при приближении к самому острому углу диагонали.
Аноним 11/02/21 Чтв 00:13:12 #132 №1937197 
https://github.com/vercel/next.js/blob/canary/examples/with-zustand/lib/zustandProvider.js
https://github.com/vercel/next.js/blob/canary/examples/with-zustand/pages/_app.js

Может кто объяснить, для чего делается эта обертка в NextJs для Zustand? Для чего там контекст используется? Это если что пример для ssr. Без него такие обертки не делаются. Просто я не пойму, что будет если я буду использовать Zustand, так, как будто бы у меня просто обычная спа на реакте?
Аноним 11/02/21 Чтв 00:23:04 #133 №1937207 
>>1937167
Для начала давай выясним все-таки, что там по поводу твоего забытого кукарека, что интеграционный тест должен проверять валидацию имейла и переходы со всех страницы, а потом уже можно перейти ко второму кругу твоей шизы, где тебе придется объяснять, почему по неполному куску тест кейса ты додумал, что я не проверяю фейлы, и откуда ты собрался брать строки, если не из кода. Но сначала первое.
Аноним 11/02/21 Чтв 00:25:08 #134 №1937210 
че бы почитать такого по ангулару кроме оф доков?типа продвинутого уровня
Аноним 11/02/21 Чтв 00:34:19 #135 №1937218 
>>1937207
> поехавший хуевые тесты называет интеграционными
> json стейта зашит в коде, даже не через переменные
> продолжает утверждать что так и нужно делать
Не продолжай, правда.
Аноним 11/02/21 Чтв 00:37:12 #136 №1937220 
>>1937218
>ита хуевый тест, конечно почему я не скажу и хороший тоже не покажу, просто хуевый!!!
Понятно, держи в курсе.
> json стейта зашит в коде
Дурачок даже не разобрался, что это юзер инпут, а не стейт.
Аноним 11/02/21 Чтв 00:42:19 #137 №1937223 
Открытые собеседования с Павлом Пидорасовым нормальная тема вообще, можно полагаться на них?
Аноним 11/02/21 Чтв 00:55:29 #138 №1937233 
>>1935813 (OP)
Антош влияет при приеме на работу скилл верстки? Стоит ли ее серьезно задрачивать?
Аноним 11/02/21 Чтв 00:58:39 #139 №1937235 
>>1937210
Почему выбрал Ангуляр?
Аноним 11/02/21 Чтв 01:02:05 #140 №1937239 
>>1937235
подвернулась работа пиздатая еще на angularjs. опыта во всяких фреймворках у меня тогда было 0,шанс упустить было нельзя. короче, как говорится -исторически сложилось
Аноним 11/02/21 Чтв 01:03:05 #141 №1937240 
>>1937233
Влияет. Стоит. Можешь еще задрочить плюсы и V8
Аноним 11/02/21 Чтв 01:12:09 #142 №1937245 
>>1937240
>Можешь еще задрочить плюсы и V8
Может еще ассемблер? Без этого во фронт вообще не берут, да?
Аноним 11/02/21 Чтв 01:36:30 #143 №1937252 
почему vue.config.js грузит картинки и фоны на локалхосте, но не грузит в проде? есть у кого пример работающего vue.config.js для прода?
Аноним 11/02/21 Чтв 04:44:26 #144 №1937276 
>>1937220
> и хороший тоже не покажу
Все свои тестируемые данные, ответы и прочее дерьмо, храни раздельно с кодом, для начала. Дальше разберешься.
Аноним 11/02/21 Чтв 06:05:55 #145 №1937281 
>>1936003
>>1936890
>>1935843
Пиздец. Какое дерьмо. Коуч оказывается на эпичном говнокоде построен, а у поуча нет кластеризации.
Аноним 11/02/21 Чтв 07:46:52 #146 №1937295 
>>1936432
redux
Аноним 11/02/21 Чтв 07:52:54 #147 №1937297 
>>1937054
Юзай firebase, чо ты как етот. Для него и либы не нужны, и в реалтайме всё. И хуле вообще тебе вебсокеты не нравятся?
Аноним 11/02/21 Чтв 08:07:09 #148 №1937302 
>>1937297
> Юзай firebase, чо ты как етот.
Так это же АТГУГЛА. К тому же это какая-то закрытая штука, нахуй нужно пользоваться этим, может я хочу хотфикс для исходников сделать или форкнуть.
> И хуле вообще тебе вебсокеты не нравятся?
UDP/QUIC нужен прост, игра 120фпс. А все остальыне данные я по https гоняю, чаты, сообщения всякие, дату.
Аноним 11/02/21 Чтв 08:22:58 #149 №1937307 
>>1937276
Так бы и написал, что в жизни своей ни одного теста не написал и понятия не имеешь, о чем говоришь. Свободен.
Аноним 11/02/21 Чтв 08:37:02 #150 №1937314 
>>1937295
class GlobalState {};
export default const globalState = new GlobalState();
Аноним 11/02/21 Чтв 08:42:16 #151 №1937319 
>>1937307
Мань, у тебя проверка роутеров всегда должна учитывать инвалид, ты понимаешь это или нет? Хватит уже обсираться, говнокодер.
Аноним 11/02/21 Чтв 09:19:25 #152 №1937323 
>>1936432
Zustand
Аноним 11/02/21 Чтв 09:22:33 #153 №1937326 
>>1937302
Так в вебе нет udp, какие игры?
Аноним 11/02/21 Чтв 09:59:11 #154 №1937345 
>>1937245
На фронт сейчас любую макаку, которая знает чем строка от числа отличается. Но если ты хочешь вырасти в дохуя тех. директора - то стоит учить что-то посолиднее жс
Аноним 11/02/21 Чтв 10:34:51 #155 №1937353 
>>1936225
На фрилансе совсем, а так полгода коммерческой разработки всяких офисных приложух для банков (тоже реакт, но там без тс).
Аноним 11/02/21 Чтв 10:58:02 #156 №1937373 
14508771970150.png
>>1936225
>сможешь релевантно оценивать свой ценник и уже примерно прикидывать сколько стоишь
Проигрываю с дебила.
Ты в универе учился? Экономическая часть дипломной работы была?

С чего долбоёбы взяли, что в фрилансе сотит выкатывать такой же ценник, какой обеспечивается при работе на кабанчика (которому кроме себя надо кормить ещё кучу ртов и башлять госудраству)?

В реальности, при работе на себя, ценник должен быть ниже и всё это прекрасно подсчитывается. Нахуй вы в универ штаны ходили просиживать? Или опять мантру заведёте - не профильный предмет, значит не нужон, лол.

Аноним 11/02/21 Чтв 11:53:08 #157 №1937416 
>>1937373
Ты дохуя факторов не учитываешь (не удивительно, если учесть, что ты за универы топишь, там такую узколобость и воспитывают). Живу в Мухосранске, работаю на дядю 300 р/час, параллельно на фрилансе получаю 400 р/час.
Аноним 11/02/21 Чтв 12:15:22 #158 №1937426 
>>1937416
Ясно. Иди на хуй.
Аноним 11/02/21 Чтв 12:20:18 #159 №1937433 
Надо, чтобы элементы выводились начиная с определённого индекса и отадавали index в таком же порядке, в каком они расположены в массиве.

Можно как-то сделать?
https://codesandbox.io/s/v-for-starts-from-index-k1yt8
Аноним 11/02/21 Чтв 12:28:26 #160 №1937444 
>>1937433
`Array.filter()`
Аноним 11/02/21 Чтв 12:47:07 #161 №1937465 
>>1937444
?
Аноним 11/02/21 Чтв 13:09:56 #162 №1937480 
Отработал 8 месяцев, сегодня написал заявление об уходе. Тимлид полный долбаеб. Постоянно разговаривает во весь голос и ржет как даун. У этого еблана весь отдел разработки разбежался, кроме пары джунов и одного 35 летнего подпивасника, а он все ржет. Уже считаю дни, когда это наконец-то закончится. Возник вопрос - я правильно понимаю, что в других офисах также и если я хочу работать в тишине и не слушать посторонние разговоры в течение всего дня, мне только на удаленку имеет смысл идти?
Аноним 11/02/21 Чтв 13:23:56 #163 №1937485 
>>1937480
Можно просто хорошие наушники купить. Ну и да, не везде лиды громкие долбоебы.
Аноним 11/02/21 Чтв 13:34:51 #164 №1937496 
>>1937480
в других местах будет еще хуже, советую на завод пиздовать
Аноним 11/02/21 Чтв 13:54:16 #165 №1937521 
>>1937465
Макака, ты? Загугли что этот метод делает подсказка - он подойдет для решения твоей задачи
Аноним 11/02/21 Чтв 13:57:50 #166 №1937522 
>>1937480
Какой средний возраст персонала был? Сам 35 лет, думаю впишусь или нет в коллектив
Аноним 11/02/21 Чтв 14:01:19 #167 №1937523 
>>1937522
Средний около 26-27. Но это небольшая компания на окраине дс. Держался только потому что мне, когда я пришел зеленым джуном, платили зп на уровне мидла ТК оформление было в серую.
Аноним 11/02/21 Чтв 14:01:59 #168 №1937524 
>>1937480
>Возник вопрос - я правильно понимаю, что в других офисах также и если я хочу работать в тишине и не слушать посторонние разговоры в течение всего дня, мне только на удаленку имеет смысл идти?
Туда ли ты зашёл? В контексте треда разве что только в бэкэнд на ноде за тишиной можно.
Аноним 11/02/21 Чтв 14:40:47 #169 №1937558 
>>1937521
Хуй.
Аноним 11/02/21 Чтв 15:27:31 #170 №1937600 
А это нормально нахуй или я тупой просто?
Переписываю свою микро-СПАшку на тайпскрип.
У меня раньше было так:
Из локал стораджа парсится строка и записывается в стейт:
setState(JSON.parse(localStorage.getItem("helloworld)));
И все собственно. Все работает, все заебись.
Теперь там ебучий монстр-тайпгард:
const isZaloopaExist = (myDick: string | null): myDick is string => {
return (myDick as string) !== undefined;
}

После этой хуйни идет проверка тайпгардом:
let dicks = localStorage.getItem("helloworld);
if(isZaloopaExist(dicks)){
setState(JSON.parse(dicks));
}


Это нормально, что у меня 1 строка превратилась в 50? Или я наговнокодил?
Аноним 11/02/21 Чтв 15:38:16 #171 №1937610 
>>1937600
П.С. Тайпгард понабился потому что тайпскрипт стал ругаться на то, что типо в сторадже может быть запись, а может и не быть. Я это не просто так от нехуй делать придумал.
Аноним 11/02/21 Чтв 15:59:36 #172 №1937639 
>>1937610
Хз я делал так


const todoStorage = sessionStorage.getItem("todo");
const initialState: ITodoState = {
todo: todoStorage !== null ? JSON.parse(todoStorage) : [],
loading: true,
error: null,
};
Аноним 11/02/21 Чтв 16:02:05 #173 №1937642 
Всем здрасти, я новичок и мне хочется в бэкенд, но в моем городе нет вакансий на ноду (есть js и питон). Пока учусь переехать не могу. Так вот, в ноду лучше из питона приходить или из фронта на жс?
Аноним 11/02/21 Чтв 16:03:11 #174 №1937646 
>>1937642
>я новичок
Как ты попал в трусы навалу?
Аноним 11/02/21 Чтв 16:04:17 #175 №1937648 
>>1937646
Через sql-инъекцию блин
Аноним 11/02/21 Чтв 16:17:51 #176 №1937657 
>>1937433
Бамп.
Аноним 11/02/21 Чтв 16:38:05 #177 №1937684 
>>1937642
Бекенда на ноде не существует в рамках проектов за которые платят, проснись.
Аноним 11/02/21 Чтв 16:40:00 #178 №1937687 
>>1937684
А что тогда рекомендуешь для бэкенда выбрать?
Аноним 11/02/21 Чтв 16:41:15 #179 №1937688 
>>1937610
Используй ||, ?? или прямо руками хуярь if(val !== null && val !== undefined)
Аноним 11/02/21 Чтв 16:42:01 #180 №1937691 
>>1937687
Ну я выбрал C#, можно еще Go, но он по моему мнению сыроват и на нем сложно найти работу не имея опыта на жабе. Если копрофил то можешь также присмотреться к пыхе и жабе.
Аноним 11/02/21 Чтв 16:42:36 #181 №1937692 
>>1937687
Джава и пыха короли бекендов и долго ими останутся, вся эта хуйня в виде жс, питона, го, с++ для аутистов C# хуйня дла даунов
Аноним 11/02/21 Чтв 16:45:40 #182 №1937699 
>>1937524
>В контексте треда разве что только в бэкэнд на ноде за тишиной можно.
А разве это связано?
Аноним 11/02/21 Чтв 17:12:20 #183 №1937734 
>>1937687
пыха и пытон, пытон вообще везде котируется кроме фронта
Аноним 11/02/21 Чтв 17:15:55 #184 №1937743 
15855935722820.png
>>1937692
Два чаю адеквату. Вместо хуйни для даунов в виде Angular, React, Vue, учи JQuery, он король фронтенда и долго им останется.
Аноним 11/02/21 Чтв 17:17:21 #185 №1937746 
>>1937743
>jQuery
Джун, не умеющий пользоваться document.createElement и document.querySelectorAll, ты?
Аноним 11/02/21 Чтв 17:24:00 #186 №1937761 
>>1937746
${on};
Аноним 11/02/21 Чтв 17:25:39 #187 №1937765 
>>1937746
Ты в среакте или ангуляре используешь document.createElement и document.querySelectorAll? Сочувствую.
Аноним 11/02/21 Чтв 17:29:55 #188 №1937774 
>>1937765
Да, использую. Точнее в рекате это за меня делает React.createElement или _jsx или как там этот метод называется, я хуй знает я ваще на пыхе пишу мне похуй. В ангуляре хз. уж явно в реакте и в ангуляре для создания элементов не испольхуется jquery
Аноним 11/02/21 Чтв 17:35:33 #189 №1937781 
cra.png
ААААААААААА бля, свежий CRA ставит 2 тыщи пакетов.
Аноним 11/02/21 Чтв 17:39:57 #190 №1937799 
image.png
>>1937765
Попробуй вставить какой-нибудь ref в условный Intersection Observer и посмотришь, что получится...
Аноним 11/02/21 Чтв 18:03:11 #191 №1937835 
>>1937734
но тут выше умные дяди говорят что питон плохой, а чем он хуже этой самой пыхи?
Аноним 11/02/21 Чтв 18:04:51 #192 №1937841 
Блять памагити. Этот пидорас (тайпскрипт) не хочет принимать мой код даже не смотря на тайпгард. Ошибка в комментарии.
https://jsfiddle.net/a5eh2mbn/1/
Как надо сделать? Я нихуя не понимаю блять. Тайпгард же вернул тру, все действия внутри иф блока, там никак блять не может быть null, ну никак блять. Может все дело в том, что тайпгард передан как проп?
Аноним 11/02/21 Чтв 18:08:33 #193 №1937847 
>>1937799
>Intersection Observer

Вкатун, забудь про любое API у которого в спецификации пометка Working Draft
Аноним 11/02/21 Чтв 18:10:21 #194 №1937848 
>>1937835
Бекенд разный бывает, тебе если для сайтов - то только пыха.
Аноним 11/02/21 Чтв 18:16:45 #195 №1937854 
>>1937841
Либо:
function isDickExist (arg: string | null): arg is string {
return typeof arg === "string";
}

Но лучше:

let currentDicks = localStorage.getItem("Dicks") ?? '';

if (currentDicks !== '') {

}

Аноним 11/02/21 Чтв 18:23:46 #196 №1937863 
>>1937854
Да, охуенно, сработало. Почему об этом ни единого слова нет в доках тайпскрипта, а вместо этого предлагаю писать тайпгард - целую ебаную функцию - для меня загадка.
А почему тайпгард-то не сработал?
Аноним 11/02/21 Чтв 18:25:12 #197 №1937867 
>>1937326
Ну допустим квик и удп на устройствах есть. В браузерах всяких, там где невозможен квик, будут вебсокеты нескучные, вебртц и другие варианты ебли с ачьком. Но всё это гей-мсервер, похуй на него, там даже кодить нельзя больше 50килобайт, проблемы нет вообще.

Проблема в сервере бд/стейта, нужно сократить кол-во технологий и говнокода путём взятия открытой альтернативы фиребазе. И как оказалось это ОЧЕНЬ сложно.
Аноним 11/02/21 Чтв 18:26:58 #198 №1937870 
>>1937848
А можешь подробнее почему только пыха? Если тебе не трудно конечно же
Аноним 11/02/21 Чтв 18:30:21 #199 №1937879 
>>1937870
https://ru.hexlet.io/blog/posts/zachem-izuchat-php-reyting-perspektivy-sfery-primeneniya
Аноним 11/02/21 Чтв 18:35:44 #200 №1937889 
>>1937870
Потому что пейсбук и вротпресс на ней работают.
Аноним 11/02/21 Чтв 18:38:52 #201 №1937893 
>>1937889
еще vk,телега, 2ch, ютуб, гугл, амазон
Аноним 11/02/21 Чтв 18:39:31 #202 №1937894 
D15nDdIXQAARONJ[1].jpg
image.png
>>1937863
>А почему тайпгард-то не сработал?
Потому что ты его не правильно объявил, у меня всё работает. Даже в доки заглянул из-за тебя, там 1 в 1 пример есть (2 пикрил).
Аноним 11/02/21 Чтв 18:41:50 #203 №1937899 
>>1937894
Блять, точно.
Аноним 11/02/21 Чтв 18:42:20 #204 №1937900 
>>1937870
Не только пыха, тебе пиздят. Ноду тоже можешь в сервер присунуть, но присунуть её можешь только имея конкретный фреймворк.
А сейчас вообще на сервер пихают сишарп и нормально всё. Тоже хороший вариант, кста, можешь перекатываться спокойно.
Аноним 11/02/21 Чтв 18:42:48 #205 №1937901 
>>1937889
Ну и пускай работают, я вроде не цукерберг, да и не разработчик wordpress
Аноним 11/02/21 Чтв 18:43:37 #206 №1937905 
Иронично видеть советы вката на пыху в js треде.
Аноним 11/02/21 Чтв 18:44:36 #207 №1937908 
>>1937900
С# это вроде серьезное что-то, не будет ли это молотком по мухе?
Аноним 11/02/21 Чтв 18:45:00 #208 №1937909 
>>1937905
Не смешно.
Аноним 11/02/21 Чтв 18:45:38 #209 №1937910 
>>1937905
конкурентов устраняют наверное, сами уже ноду педалируют в тихую
Аноним 11/02/21 Чтв 18:56:07 #210 №1937928 
>>1937908
Да не, много всякого серверного на сишарпе делают. Конечно не сравнить с питоном или нодой. Но бывают довольно серьезные штуки.
В любом случае, смотри от того, чем лично ты хочешь заниматься вообще. На беке очень много технологий, даже на плюсах и чистом си пишут логику для нагруженных микросервисов.
Аноним 11/02/21 Чтв 18:56:55 #211 №1937932 
>>1937905
меньше долбоебов на вакансию будет
Аноним 11/02/21 Чтв 19:05:50 #212 №1937947 
>>1937928
хочу писать что-то такое, чтоб с сетями компьютерными, чтоб базы данных работали, чтоб механизмы какие-то для людишек данные обрабатывали, и всем от этого хорошо было, это мне куда пойти лучше? я серьезно
Аноним 11/02/21 Чтв 19:10:03 #213 №1937956 
123456.png
Хуле ему не нравится? Пробовал гуглить, ничего релевантного. Конфиг вебпака https://jsfiddle.net/4s2ob7rp/
Аноним 11/02/21 Чтв 19:16:42 #214 №1937968 
>>1937956
П.С. Этот флаг esModuleInterop стоит true.
Аноним 11/02/21 Чтв 19:20:43 #215 №1937977 
>>1937521
Да напиши ты уже как правильно сделать. :\
Аноним 11/02/21 Чтв 19:24:59 #216 №1937984 
>>1937956
Какая версия ноды?
Аноним 11/02/21 Чтв 19:28:05 #217 №1937989 
>>1937345
>На фронт сейчас любую макаку, которая знает чем строка от числа отличается.
Пиздеж. Если ты даже тут напиздел, то твои слова про тех директоров всерьез принимать нельзя. Твои советы по изучению V8 и С++ тоже
Аноним 11/02/21 Чтв 19:29:08 #218 №1937991 
>>1937984
v14.15.4
Аноним 11/02/21 Чтв 19:29:34 #219 №1937992 
>>1937373
Маня, ты стоишь ровно столько, сколько тебе готовы платить. И всегда, в любой ситуации найдется тот, кто будет готов платить тебе больше. Хуею с этого экономиста
Аноним 11/02/21 Чтв 19:34:04 #220 №1938000 
>>1937433
this.btnNames.reduce((acc, e, i) => i >= start && i <= end ? (acc.push([e, i]), acc) : acc,[])
Аноним 11/02/21 Чтв 19:34:09 #221 №1938001 
>>1937991
Тогда вебпук блочит ESM в целях совместимости.
Не выёбывайся и пользуй CJS. Тайпскрипт кстати тут не поможет, так как конфиги не компилируются.
sageАноним 11/02/21 Чтв 19:35:21 #222 №1938002 
>>1938000
говно
Аноним 11/02/21 Чтв 19:36:51 #223 №1938003 
>>1935813 (OP)
https://learn.javascript.ru/ нужен? или хватит
>https://developer.mozilla.org
Аноним 11/02/21 Чтв 19:37:43 #224 №1938005 
>>1938001
>>1937991
>>1937984
>>1937956
Ебать вы долбоебы, нода может работать либо с CJS модулями, либо с ESM. Вебпак, очевидно, работает с CJS, а ты ему ESM пихаешь.
https://nodejs.org/api/esm.html
Аноним 11/02/21 Чтв 19:37:59 #225 №1938007 
>>1938002
Ну твоим фильтром там ничего не сделаешь, сычуш, как бы тебе этого не хотелось.
sageАноним 11/02/21 Чтв 19:38:37 #226 №1938009 
>>1938007
чини детектор даун
Аноним 11/02/21 Чтв 19:38:51 #227 №1938010 
>>1938003
>https://developer.mozilla.org
>https://learn.javascript.ru/
https://262.ecma-international.org/6.0/ <- только это, нодискасс
Аноним 11/02/21 Чтв 19:39:54 #228 №1938011 
>>1938001
>>1938005
То есть мне в конфиге все через рекваер писать вместо импорта и все?
Аноним 11/02/21 Чтв 19:39:58 #229 №1938012 
>>1938009
У тебя в штанах насрано, беги стирать быстрее.
Аноним 11/02/21 Чтв 19:41:46 #230 №1938016 
>>1938011
Именно. В самом коде проекта уже похуй можно и так и так писать, пушт babel-loader подхватит и приведет все это к единому виду.
Аноним 11/02/21 Чтв 19:51:31 #231 №1938033 
>>1938005
>Вебпак, очевидно, работает с CJS, а ты ему ESM пихаешь.
Вебпук всего-лишь жрёт то, что ему кормит нода, а 14 версия поддерживает ESM из коробки, хотя и требует явного объявления через `package.json`/переменной.
По идее, если вебпак под капотом не делает лютый харкод на CJS, то можно в корневом `package.json` добавить `"type":"module"` и посмотреть на результат.
Аноним 11/02/21 Чтв 19:52:42 #232 №1938036 
cover-a1d5b40.png
>>1935813 (OP)
Подскажите по организации кода в React.

Цель - создать компонент, который выводит markdown разметку в виде html и стилизует её в css.

Я не знаю как правильней будет это сделать. Я скачал либу для парсинга markdown в html, но куда её подключать? В код самого компонента? Или передавать сверху, спуская в компонент уже готовый html? Я слышал, что компоненты должны быть независимы, но если подключить в сам компонент, то он по сути залочится на этой либе. Или это норма?
Аноним 11/02/21 Чтв 19:52:48 #233 №1938037 
>>1937947
В сбер
Аноним 11/02/21 Чтв 19:53:28 #234 №1938039 
>>1937433
const a = [1, 2, 3, 4];
const START_INDEX = 1;
console.log(a.map((val, i) => (i >= START_INDEX ? val : void 0)));
Аноним 11/02/21 Чтв 19:54:13 #235 №1938040 
>>1938033
Только что попробовал. Это не работает. Видимо, все-таки хардкод.
Аноним 11/02/21 Чтв 19:55:22 #236 №1938043 
>>1938036
Сначала ответь на вопрос, нахуя тебе тут реакт сдался? Это делается парой стрчоек в ванильном жс.
олсо
>в компонент уже готовый html
Так делать нельзя, гугл XSS.
Аноним 11/02/21 Чтв 19:55:37 #237 №1938044 
>>1937947
Чел, слишком объемно. Ты можешь изучать с++ и всю жизнь писать высокнагруженные БД. Или программные штучки-дрючки.
Сейчас вообще не факт что какой-нибудь компенлируемый язык, вроде нима, не будет доминировать даже в фронте.
Изучай всё постепенно, алгоритмы и архитектуры данных. Несколько языков, вклюая си, плюсы немного и js. Этого хватит. Наверное. Потом выберешь себе по душе.
Аноним 11/02/21 Чтв 19:58:10 #238 №1938048 
>>1938040
>>1938033
Нода может работать с одними модулями, ну получится намешать esm, cjs и amd в кучу, как писал выше анон. Т.к. внутри кода вебпака все написано на реквайрах - придется писать конфиг на реквайрах или поставить type: "module" в package.json и заменить гору module.exports и require на export default и import в исходниках вебпака соответственно
Аноним 11/02/21 Чтв 19:58:21 #239 №1938049 
>>1938000
>this.btnNames.reduce((acc, e, i) => i >= start && i <= end ? (acc.push([e, i]), acc) : acc,[])
Спасибо, конечно, но не работает.

Выводит: "Delete profiles", "Save profiles", "Load profiles" в качестве первых трёх кнопок, когда указываешь промежуток 0..2.

А в качестве следующих двух кнопок выводит: "Delete profiles", "Save profiles", когда указываешь промежуток 3...4. А должно вывести: "Upload bot profiles", "Upload top profiles".

И индексы кнопки после повторного вызова отдают не те: счётчик сбрасывается и отдаёт 0, 1, а должно отдавать индексы указанного промежутка (3, 4).

То, что я хотел бы получить вобще реально?
Аноним 11/02/21 Чтв 19:58:51 #240 №1938050 
>>1938043
>Сначала ответь на вопрос, нахуя тебе тут реакт сдался?
Может потому что там не только этот компонент?

>Так делать нельзя, гугл XSS.
Откуда в этой схеме XSS? Парсер душит всю херню.
sageАноним 11/02/21 Чтв 19:59:33 #241 №1938053 
>>1938049
нет
Аноним 11/02/21 Чтв 20:00:17 #242 №1938055 
>>1938053
Джаваскриптера ответ.
sageАноним 11/02/21 Чтв 20:01:06 #243 №1938057 
>>1938055
ты че пёс! я программист!
Аноним 11/02/21 Чтв 20:01:28 #244 №1938058 
image.png
>>1938049
Ну ты долбоеб потому что, не заменил значения в шаблоне. Хз зачем ты вообще что-то делать пытаешься, у тебя ведь ни знаний фреймворка, ни знаний JS.
Аноним 11/02/21 Чтв 20:02:11 #245 №1938059 
>>1938050
>Парсер душит всю херню.
Ты сам написал, что html собрался вставлять, лол, тут тебя никто не задушит.
>Может потому что там не только этот компонент?
Ну раз так, то передавай markdown в компонент и парси, применяй стили и рендери внутри него
sageАноним 11/02/21 Чтв 20:04:16 #246 №1938061 
>>1938058
а зачем ты долбоебу пытаешься помочь? ты что долбоеб ?
Аноним 11/02/21 Чтв 20:05:36 #247 №1938065 
>>1938059
>Ты сам написал, что html собрался вставлять
Ты имбецил? Ты знаешь что такое markdown? Ты знаешь зачем он нужен и что делает парсер? Если не знаешь - зачем пишешь?
>Ну раз так, то передавай markdown в компонент и парси
Ой, а почему? А не будет XSS? А как же html?
Аноним 11/02/21 Чтв 20:07:11 #248 №1938066 
>>1938043
>Это делается парой стрчоек в ванильном жс
продемонстриуй мб
Аноним 11/02/21 Чтв 20:09:58 #249 №1938071 
>>1938061
Но ведь я не пытался тебе помочь, долбоеб...
Аноним 11/02/21 Чтв 20:10:16 #250 №1938072 
>>1938065
>Ты знаешь что такое markdown?
Знаю. ЧТо мешает в md написать <script>alert("Пошел нахуй хуила ебаная")</script> и передать в твой говнокод?
>Ой, а почему? А не будет XSS? А как же html?
Тебе не обязательно иметь html при вставке элементов в реакте, дурачек. Если твоя либа возвращает Element или DocumentFragment, то ты можешь квериселектором пройтись и ремувнуть все скрипты и линки до вставки в DOM.
>>1938066
Делаешь реф на ту часть компонента, в которую тебе надо вставить свое говно, потом вставляешь через append или appendChild. Тяжело, правда?
Аноним 11/02/21 Чтв 20:11:52 #251 №1938073 
>>1938058
>>1938061
Сами вы долбоёбы. Делаю, как могу: мне этот ваш JS на хуй не нужен. Одну махарайку доделаю и заброшу его к ебеням.

Спасибо.
Аноним 11/02/21 Чтв 20:16:08 #252 №1938076 
>>1938072
>Знаю
>ЧТо мешает в md написать <script>alert("Пошел нахуй хуила ебаная")</script> и передать в твой говнокод?
Такого обосрамся я давно не видел. Прямо сразу, без разгона?

>Тебе не обязательно иметь html при вставке элементов в реакте, дурачек. Если твоя либа возвращает Element или DocumentFragment, то ты можешь квериселектором пройтись и ремувнуть все скрипты и линки до вставки в DOM.
И нахуя мне это делать? Ты вопрос то мой читал, ебень?
Аноним 11/02/21 Чтв 20:24:09 #253 №1938086 
>>1938072
>дурачек
лол
>Цель - создать компонент, который выводит markdown разметку в виде html и стилизует её в css.
>Сначала ответь на вопрос, нахуя тебе тут реакт сдался? Это делается парой стрчоек в ванильном жс.
>Делаешь реф на ту часть компонента, в которую тебе надо вставить свое говно, потом вставляешь через append или appendChild. Тяжело, правда?
ты ведь просто рандомную хуйню несёшь признайся
Аноним 11/02/21 Чтв 20:26:54 #254 №1938088 
123456.png
654321.png
Блять теперь ему мой плагин не нравится. Переделал импорт с import path from "path" на import path = require("path").
Ну что такое пиздец блять.
Аноним 11/02/21 Чтв 20:37:56 #255 №1938099 
>>1938088
че ты делаешь там вообще
Аноним 11/02/21 Чтв 20:44:27 #256 №1938107 
>>1938099
Ебусь Переписываю спа на тайпскрипт.
Аноним 11/02/21 Чтв 20:45:10 #257 №1938110 
>>1938107
ух бля
Аноним 11/02/21 Чтв 20:47:51 #258 №1938113 
>>1938110
А что ух бля, оно микроскопическое, я делаю это из спортивного интереса, и чтобы разобраться получше в тайпскрипте и вебпаке.
Аноним 11/02/21 Чтв 21:03:57 #259 №1938125 
Аноны, а в твиттере до сих пор bootstrap юзают для интерфейса?
Аноним 11/02/21 Чтв 21:12:59 #260 №1938129 
Можно ли как-то фейково тригернуть медиазапрос у CSS? Когда на самом деле у тебя размер экрана не изменился, но css думает, что изменился

Про то, как это сделать просто добавив мобильный стиль по клику я конечно знаю, но интересно было бы узнать про первый вариант.
Аноним 11/02/21 Чтв 21:33:30 #261 №1938147 
>>1938113
Так спа переписвый, а не конфиги, лол
Аноним 11/02/21 Чтв 21:41:09 #262 №1938153 
>>1938147
Так я его собрать не могу блять.
Аноним 11/02/21 Чтв 22:21:01 #263 №1938168 
>>1938153
Тебе нужен тсконфиг и тслоадер, все
Аноним 11/02/21 Чтв 23:50:20 #264 №1938211 
Для чего фейсбуки и гуглы пилят и развивают свои фреймворки? Им-то с этого что? Для чего они выкладывают это во всеобщее пользование?
Аноним 11/02/21 Чтв 23:56:27 #265 №1938214 
>>1938211
Пилят для себя, выкладывают, чтобы халявная рабочая сила горбатилась на их развитие.
Аноним 11/02/21 Чтв 23:57:21 #266 №1938215 
>>1935813 (OP)
gquery еще в моде?
Аноним 11/02/21 Чтв 23:59:40 #267 №1938216 
>>1938215
jQuery? Будет в моде еще лет десять. возможно и больше
Аноним 12/02/21 Птн 00:01:33 #268 №1938217 
>>1938168
>тслоадер
А он полифиллы добавляет автоматом для IE6?
Аноним 12/02/21 Птн 00:06:15 #269 №1938220 
>>1937373
> В реальности, при работе на себя, ценник должен быть ниже
Разве что если ты лошок без самоуважения. У нормальных людей ценник наоборот выше чем при работе на дядю.
Аноним 12/02/21 Птн 00:08:50 #270 №1938221 
>>1937684
Пиздёж.
Аноним 12/02/21 Птн 00:11:47 #271 №1938223 
>>1938216
>>1938215
Уже не в моде последние лет пять
Аноним 12/02/21 Птн 00:19:04 #272 №1938226 
>>1938223
Ну популярность спадает, да. Но jquery все равно топ 1 либа по частоте использования пока что.
Аноним 12/02/21 Птн 00:31:53 #273 №1938230 
Вопрос к мастерам тайпскрипта.

Пишу простенький бекенд на ноде, делаю цепочку вызовов классов.
Аля - router ->, в роутере controller -> в контроллере service.

Получается следующая структурка :
Class Service {
publick method Boo(){}
}

Class Controller {
publick service: new Service()

method Foo1(){ some logic }
method Foo2(){ this.service.Boo }
}

Class Router {
router: Router,
controller : new Controller()

method Doo1 { this.router(this.controller.Foo1)}
method Doo2 { this.router(this.controller.Foo2.bind(this.controller)}
}

Вопрос в следующем.
Пока я работаю с Router.Doo1() -> Controller.Foo1(), все работает нормально. И мне кажется есть понимание, что вот мы инициализировали класс роутера, потом внутри него инициализировали класс контроллера, все супер, заебись.
Но как только я хочу вынести логику из контроллера в новый сервис, js теряет контекст инициализации классов, в упор не видит внутри контроллера казалось бы инициализированный класс сервиса, и мне надо ПРИБИТЬ руками ссанный контекст контроллера(прописать bind), чтобы все заработало: Router.Doo2(Controller.Foo2().bind(Controller))->Controller.Foo2()->Service.Boo()
Почему так происходит?

Есть какое-то смутное представление, что это из-за того, что в jsе
const a = new A();
const b = a.b;
b(); // now 'this' is lost, any reference to `this` in b() code would be undefined

Но что-то чувствую что не до конца понимаю.

Аноним 12/02/21 Птн 00:33:25 #274 №1938233 
>>1938230
>publick
Аноним 12/02/21 Птн 00:35:20 #275 №1938235 
>>1938230
Используй декораторы
Аноним 12/02/21 Птн 00:40:50 #276 №1938239 
>>1938233
джсер же, по определению обосрался
>>1938235
собственно, нет проблемы с решением - bind и является декоратором(здарова), проблеа с пониманием, почему так.
Аноним 12/02/21 Птн 00:44:12 #277 №1938241 
>>1938226
Для сложных проектов практически не используют
Аноним 12/02/21 Птн 00:47:09 #278 №1938244 
>>1938241
Ты хотел сказать для новых проектов почти не используют, в тысячах и даже десятках тысяч уже написанных проектов jQuery является основополагающей либой
Аноним 12/02/21 Птн 00:49:01 #279 №1938246 
>>1938230
Первое, что мне пришло в голову - написать геттер, который при попытке запроса поля класса его забиндит к этому классу. я не эксперт
Аноним 12/02/21 Птн 00:49:53 #280 №1938247 
>>1938230
Ты конкретный код покажи, скажи как ты думал что будет работать и как оказалось на деле, а не свои foo с publick, потому что из этой стены текста не понятно чего ты хочешь и чего ты не понимаешь.
Аноним 12/02/21 Птн 00:54:05 #281 №1938250 
>>1938230
Вот мне после таких случае хочется все бросить нахуй и начать хуярить if else нонстопом. Нахуй это ООП, нахуй.
Аноним 12/02/21 Птн 01:00:40 #282 №1938253 
>>1938244
Да, именно для новых. Поэтому жиквери не нужен, мы ведь постоянно разрабатываем новые проекты
Аноним 12/02/21 Птн 01:02:01 #283 №1938254 
>>1938253
Ну хзхз, у нас на РАБоте в одном из проектов 2020 года хуярят на jquery + react. Одна из известнейших в РФ Ит компаний кста
Аноним 12/02/21 Птн 01:02:13 #284 №1938255 
>>1938247
Ну давай с кодом.

router.use('/api', new TestRouter().router);


class TestRouter {
router: Router; //express router
public Controller: Controller = new Controller();

constructor() {
this.router = Router()
this.routes();
}

routes(): void {
this.router.post('/test', this.Controller.makeScheme); (если вот тут не прибиндить .bind(this.Controller) нихуя не работает, контроллер будет с undefine сервисом
}
}


class Controller {
public Service: Service

constructor() {
this.Service = new Service();
}

public async makeSchema(req: Request, res: Response): Promise<void> {
this.Service.deleteF();
try {
// logic
res.send(shema);
});
} catch (err) {
res.status(500).json({success: false, error: err.message});
}
}


class Service {

public deleteF() {
//logic
}
}

Я искренне думал, что если вызываешь последовательно три класса друг в друге, то все у них будет заебись, и проблем с обращением к филду нет. С двумя-то РАБОТАЛО.
Аноним 12/02/21 Птн 01:22:51 #285 №1938258 
>>1938241
у меня такой вопрос что вы имете виду под сложными проектами 'это что то типа этого https://auroraos.ru
Аноним 12/02/21 Птн 01:51:34 #286 №1938264 
Перестал работать скрипт, который в лисе добавлял кнопку поиска по картинке в контекстное меню. Скрипт очень небольшой https://greasyfork.org/ru/scripts/32211-saucenao-reverse-image-search/code, если не сложно посмотрите, в чем может быть проблема. Сам я не погромист, пробовал менят значения в скрипте, отключал другие дополнения, пробовал другие браузеры, нихуя не помогло.
Аноним 12/02/21 Птн 02:26:41 #287 №1938269 
>>1938258
Например фронтенд ютуба
Аноним 12/02/21 Птн 02:34:10 #288 №1938270 
>>1938230
ТС тут не причем. Это дефолтное поведение ЖС, когда в классах отъебывает блядский контекст.
Бинди методы или делай их стрелочными функциями, они собственного this не имеют и всегда будут в контексте класса.
Аноним 12/02/21 Птн 03:57:03 #289 №1938285 
>>1938255
Ну понятно. Просто почитай на мдн статью this, в твоем случае можно возвращать из makeSchema стрелочную функцию, тогда контекст захватиться и всё будет работать как ты ожидал.
Аноним 12/02/21 Птн 04:24:43 #290 №1938290 
Каким образом четкие пацаны отображаются относительно однотипный контент с разной структурой внутри? Вот например есть разные предложение товара у пользователя на странице. В целом это одни и те же карточки с заголовком, картинокй и описанием. Но к примеру где-то карточка с двумя подзаголовками. Где-то сначала идет картинка, а потом заголовок и все такое. Может ли работа сервера быть устроена так, что с бека прилетает в вместе с json данными еще и какая-то html разметка? Типа просто в виде текста "<h3>huita</3>", которую ты просто пихаешь внутрь компонента, а там уж оно само работает. Бывает ли так организовано отображение данных? Или все таки есть какой-то предел вариативности в отображении, и нужно просто быть готовым ко всем вариантам на фронте? Либо пиздить палкой ux дизайнера за такое?

Делаю небольшой сайт, тут как раз есть такая проблема, но у меня нет еще никакого бека, так что я структуру данных формирую самостоятельно. Или нужно в любом случае все эти моменты обсуждать с бекендщиками и универсального решения нет?
Я бы все это обсудил с остальными членами команды, но я вкатун джун дегенерат, и боюсь опозориться такими вопросами, чтобы потом на меня пальцем не показывали и не орали всем отделом
Аноним 12/02/21 Птн 04:35:59 #291 №1938293 
>>1938290
С бэка приходят только конкретные данные, никаких разметок. Тонкости отображения это задача фронта. Для этого и изобрели SPA и веб компоненты. В твоём случае можно создать компонент, который принимает заголовок, подзаголовок, картинку, описание, а также свойства которые отвечают за расположение картинки относительно заголовка и описания и т. п. в зависимости от ситуации.
Аноним 12/02/21 Птн 04:39:50 #292 №1938295 
>>1938293
>а также свойства которые отвечают за расположение картинки относительно заголовка и описания и т. п. в зависимости от ситуации.
Вот это меня и интересовало, не знал есть ли такая практика вообще или нет. Спасибо.
Аноним 12/02/21 Птн 06:03:58 #293 №1938306 
>>1938217
Для этого есть бабел лоадер
Аноним 12/02/21 Птн 09:49:51 #294 №1938354 
>>1938306
Я к этому и клоню.
Аноним 12/02/21 Птн 09:54:35 #295 №1938356 
>>1938354
Ну и? Тслоадер работает с ts, далее babel уже с js, в итоге у тебя в бандле то что высрал babel, хули еще?
Аноним 12/02/21 Птн 10:15:35 #296 №1938362 
>>1938290
> Бывает ли так организовано отображение данных?
Да, но зачем? Можешь хоть jsx и компонеты с бека брать и в стейт пихать, компоненты типо динамически загружать. Некоторые так делают, хз зачем.
> Делаю небольшой сайт, тут как раз есть такая проблема,
Какая проблема? Проблема в том, чтобы определить компоненты заранее? Странная проблема.
Аноним 12/02/21 Птн 10:17:02 #297 №1938363 
>>1938356
Нахуя тслоадер + бабел-лоадер, если бабел-лоадер умеет в тс?
Аноним 12/02/21 Птн 10:33:58 #298 №1938369 
>>1938363
Нихуя почитай доку
Аноним 12/02/21 Птн 10:50:41 #299 №1938374 
>>1938369
Прочитал. babel-loader сопокойно может обрабатывать и тс и jsx и vue и дохуя еще чего, если ты на него навесишь соответствующие плагины и/или пресеты, для тс ему нужен @babel/preset-typescript
Аноним 12/02/21 Птн 11:17:04 #300 №1938385 
>>1938374
Настраивать плагины плагинов пакета нахуй не всралось.
Аноним 12/02/21 Птн 11:28:17 #301 №1938403 
Стикер
>>1938073
Пчел, не воспринимай их всерьёз. Не слушай, что они тебе говорят. Опыт придет со временем. Все мы были начинающими. Просто продолжай двигаться
Аноним 12/02/21 Птн 11:34:45 #302 №1938407 
>>1938385
Зато нахуярить тысячи зависимостей в проект это да, явно лучше чем один нормально сконфигурированный лоадер.
Аноним 12/02/21 Птн 12:03:23 #303 №1938428 
>>1938403
>Все мы были начинающими
>синиор в треде
Аноним 12/02/21 Птн 12:12:22 #304 №1938438 
>>1938407
>бабел
>один нормально сконфигурированный лоадер
Выбери одно.
Аноним 12/02/21 Птн 13:21:14 #305 №1938492 
>>1938438
Какие лоадеры нужны что бы грузить js/ts помимо бабеля? В нем все что нужно реализовано
Аноним 12/02/21 Птн 13:30:21 #306 №1938498 
IMG0873.jpeg
>>1938374
Нихуя ты не прочитал
Аноним 12/02/21 Птн 13:36:53 #307 №1938504 
>>1938492
ts-loader
Аноним 12/02/21 Птн 13:39:47 #308 №1938507 
Сап, посоны. А есть какие-то статьи с примерами разных архитектур приложений сугубо на реактовских хуках? У меня на апках при переписывании на хуки получаются хаотическое спагетти, я чего-то не понимаю получается. Подскажите плес.
Аноним 12/02/21 Птн 13:57:25 #309 №1938524 
Почему код в блоке if не выполняется? Дело 100% в тайпскрипте. Руками такой код в консоли работает, без тайпскрипта тоже работает. Но с тайпскриптом он либо не выполняется, либо ссылается на items.map в другом компоненте и говорит, что это не функция. То есть какая-то хуйня с типами происходит, я только не могу понять где и какая. Сама функция выполняется, в консоль успешно пишется клик и имя айтема. Причем хуйня происходит именно здесь, потому что айтемы нормально маппятся при первом запуске, и если руками из консоли их удалять, то так же нормально маппятся и рендерятся, но стоит все сделать из функции, как сразу все летит в пизду.
https://jsfiddle.net/73e9wzmt/
Аноним 12/02/21 Птн 14:04:19 #310 №1938533 
Стикер
>>1938507

Бампану вопрос.
Тоже интересна эта тема. Интересно кто-нибудь занялся вопросом стандартизации функциональных компонентов или нет (имеется ввиду, что все компоненты имеют +- одинаковую структуру с одинаковой читабельностью, как в Vue)
Аноним 12/02/21 Птн 14:13:39 #311 №1938557 
>>1938498
Так а нахуя данный тапчекинг нужен то? Один хуй от него на проде толку мало, только производительность уменьшает, а в деве есть линтеры
Аноним 12/02/21 Птн 15:15:50 #312 №1938605 
>>1938557
Проиграл. А нахуй тебе тс тогда?
Аноним 12/02/21 Птн 15:34:59 #313 №1938628 
>>1938605
Чтобы в редакторе кода случайно не запихнуть тот интерфейс туда, где ему находится не нужно.
Аноним 12/02/21 Птн 16:29:59 #314 №1938678 
>>1938507
Выноси логику нахуй из компонентов.
Аноним 12/02/21 Птн 16:36:15 #315 №1938683 
>>1938678
КУДА?
Аноним 12/02/21 Птн 16:36:33 #316 №1938685 
Анон, как выкидывать эксепшоны так, чтобы текст ошибки указывал на РЕАЛЬНУЮ позицию ошибки, а не там, где находится `throw Error(...)`? Гугл не дает никакой информации не дает.
Аноним 12/02/21 Птн 16:42:04 #317 №1938689 
>>1938683
В отдельные модули, куда еще то блять.
Аноним 12/02/21 Птн 16:42:42 #318 №1938691 
>>1938683
Наверно парень имел ввиду создавать что то вроде кастомных хуков в отдельном модуле для каждых компонентов или все состояния на стороне стейт менеджера держать, потому что мне тоже не до конца понятно как это выглядеть должно
Аноним 12/02/21 Птн 16:43:15 #319 №1938692 
>>1938685
Настрой source-map в вебпаке или гульпе, браузер будет тебе даже название файла писать и строку, где произшла ошибка. Даже если ты обфусцировал и минифицировал код
Аноним 12/02/21 Птн 16:47:16 #320 №1938697 
14079168548246.jpg
>>1938689 >>1938691
Янихуянепонял Я понимаю примерно что надо делать, но на выходе Очко Ужаса. Мож есть таки примеры где-то про такую архитектуру уровнем повыше хеллоувордов-каунтеров, а?
Аноним 12/02/21 Птн 16:49:30 #321 №1938701 
>>1938697
покажи свою лапшу
Аноним 12/02/21 Птн 16:51:05 #322 №1938703 
image.png
>>1938692
Ты не понял.
Пример на пикрил
Аноним 12/02/21 Птн 16:51:27 #323 №1938705 
>>1938697
Вот кста реальная проблема - это то, что просто огромная масса контента для вкатунов на просторах интернета, но очень мало инфы о том, как должен писать продвинутый человек
Аноним 12/02/21 Птн 16:53:12 #324 №1938708 
>>1938701
Это такая немалая приложуха на тучу файлов. Это разве что свой гитхаб давать.
Аноним 12/02/21 Птн 16:54:43 #325 №1938712 
>>1938703
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Error/Stack
Аноним 12/02/21 Птн 16:59:46 #326 №1938722 
Прочитал YDKJS "Замыкания и объекты" и картина мира перевернулась. Выходит, что введенный в ES6 синтаксис "классов" и правда фуфло? Предложенный автором паттерн Ололо OLOO, в котором есть только объекты и связи между ними выглядит и правда более удобным. И как тогда быть? Везде же требуют классы? Или каждый дрочит как он хочет?
Аноним 12/02/21 Птн 17:03:03 #327 №1938727 
>>1938722
Всем похуй на твой YDKJS и предложенные автором паттерны. Дрочи то что использует большинство. При этом классы у тебя будут требовать только если речь о TS, в JS классы нахуй не нужны.
Аноним 12/02/21 Птн 17:04:55 #328 №1938729 
>>1938712
Это же ридонли свойство.
Аноним 12/02/21 Птн 17:07:55 #329 №1938731 
>>1938729
А нет, нихуя
Аноним 12/02/21 Птн 17:23:12 #330 №1938743 
>>1938683
сделай компоненты-обертки - каждый для своей задачи.
и потом скомпозируй все в финальном компоненте, который имеет в себе только ретурн с JSX
Я так делаю и ты так делай
Аноним 12/02/21 Птн 17:24:25 #331 №1938744 
>>1938727
В реакте тоже
Аноним 12/02/21 Птн 17:26:45 #332 №1938746 
какой задачей проверить себя на понимание y-combinator'a?
Аноним 12/02/21 Птн 17:33:58 #333 №1938751 
>>1938744
А что там их заменяет? Как более менее нормально структурировать код? Или там просто все навалено в кучу?
Мимо пока не дошел до фреймворков
Аноним 12/02/21 Птн 17:35:25 #334 №1938752 
>>1938751
хуки, но как их нормально использовать никто не знает
Аноним 12/02/21 Птн 17:38:00 #335 №1938754 
>>1938751
функции с хуйками
на офф сайте написанно, что использовать наследование в реакт не рекомендуется. поэтому классы там не нужны
Аноним 12/02/21 Птн 17:39:04 #336 №1938757 
>>1938744
Так реакт это помойка уровня "смузихлеба переклинило и он решил всё поменять". Если хочешь посмотреть на грамотную архитектуру, то смотри на ангуляр.
Аноним 12/02/21 Птн 17:39:56 #337 №1938758 
15929210703160.jpg
>>1938754
>с хуйками
проиграл
Аноним 12/02/21 Птн 17:40:03 #338 №1938759 
>>1938722
Это синтаксический сахарок для перекатышей из всякого говна типа Жавы.
Конечно же никаких нормальных классов в жс нету, бразуер просто не понимает что такое класс. Он понимает что такое прототипы.
Аноним 12/02/21 Птн 17:41:58 #339 №1938760 
>>1938757
>ангуляр
Ангуляр неудобное говно, в котором куча багов и недоделок. Он просто концептуально дальше от сути скриптоговна JS, в отличие от реакта, поэтому там куча проблем.

мимо писал на этом
Аноним 12/02/21 Птн 17:44:26 #340 №1938763 
ангуляр говно
реакт говно
вуй говно
светл говно
Аноним 12/02/21 Птн 17:45:39 #341 №1938764 
>>1938763
все вкатываемся обратно в jquery и серверные темплейты
аве пхп и руби
Аноним 12/02/21 Птн 17:48:23 #342 №1938766 
Блять, какие же жс треды убогие. Всегда сюда захожу и вижу кучу вопросов, которые просто настолько дебильно сформулированы, что пиздец. Еще вот эти выяснения без примеров кода "а как вы делаете %хуйню нейм%"(дальше вкатыш врубает всю силу своего красноречия и высирает какие-то нечитабельные предложения, которые просто глупо выглядят хотя бы с точки зрения того, как это описывается).
Или эти выяснения на митингах в какой цвет кнопочку покрасить с ебалом аля тут компилятор свой пишут.

Выкатился бы с радостью из этой поеботы нахуй, но перекат на другой стек и потеря зп - это пиздец.
Аноним 12/02/21 Птн 17:50:00 #343 №1938767 
>>1938766
Пости хорошее.
Аноним 12/02/21 Птн 17:50:17 #344 №1938768 
>>1938766
это двач. тут такая атмосфера. можешь проследовать на "нормальные" форумы, если они еще живы в 2021
Аноним 12/02/21 Птн 17:52:21 #345 №1938771 
>>1938760
Это всё пустые слова неосилятора, который если и знает об ангуляре, то старых версий и то только поверхностно. Ангуляр это идеальная синергия ООП и ФП парадигм, именно поэтому в нём активно используется rxjs в отличии от среакта с его бесконечными костылями в виде мобиксов, редуксов и изменений в виде хуков.
анон 12/02/21 Птн 17:57:44 #346 №1938774 
Это нормально, что я не могу сам запилить свой от руки написанный дрэг-н-дроп слайдер с автовыравниванием? Вообще моск не в состоянии прикинуть как это реализовать.

Опытные фронтендеры, а вы сами в состоянии такой слайдер запилить с нуля? То что я не могу это зашквар?

вкатун, 3 месяца изучения
Аноним 12/02/21 Птн 17:59:30 #347 №1938777 
>>1938766
посри еще в треде, тут мало насрано
Аноним 12/02/21 Птн 18:00:56 #348 №1938780 
>>1938774
>Это нормально
Для 3х месяцев нормально.
>а вы сами в состоянии такой слайдер запилить с нуля?
Да, могу запилить в качестве Ангуляр компонента, оформив всё виде красивого кода с использованием rxjs, который сводит задачу к тривиальной и требует от тебя написания нескольких строк кода.
Аноним 12/02/21 Птн 18:01:03 #349 №1938782 
>>1938774
самому заплилить это типо без гайда "как запилить свой днд"?
ну это нужно иметь энциклопедические знание по событиям браузера и всякие тонкости поведения элементов с draggable
Аноним 12/02/21 Птн 18:04:48 #350 №1938786 
>>1938763
Каждый хвалит свое болото. Объективно у каждого софта есть недостатки, ибо их пишут люди.
У реакта это масштабируемость и юзание кучи сторонних либ.

У ангуляра это;
1) Завязанность на паттернах в ущерб читаемости и простоте кода
2) Уебищная дока
3) Баги, недоделанные фичи
4) Уебищный механизм перфоманса.
5) Всратые формы
6) УЕБИЩНЫЙ ДЕБАГ. ПРОСТО ОБОСРАНЫЕ СТЕКТРЕЙСЫ.
7) И да, на ангуляре высирают говнокода наверное даже больше, чем на реакте.


За вью не ебу, это какая-то китайщина аля спиздил тут, спиздил там. Пользуйтесь.

>>1938771
Вкатыш, иди нахуй.
Аноним 12/02/21 Птн 18:05:34 #351 №1938787 
>>1938782
А просто подписаться на события mouse-up/down/move и действовать в зависимости от координат передаваемых ивентом - совесть не позволяет?
Аноним 12/02/21 Птн 18:06:26 #352 №1938789 
>>1938786
>1) Завязанность на паттернах в ущерб читаемости и простоте кода
>паттерны
>ущерб читаемости и простоте кода

У тебя обсер в первом же пункте, при этом такой величины, что остальные даже нет смысла читать. И ты кого-то вкатышем называешь? Смех да и только.
Аноним 12/02/21 Птн 18:09:15 #353 №1938792 
>>1938789
Бля, ты настолько смехотворный вкатун, что с тобой даже всерьез разговаривать не о чем. Видно же сразу, что не видел абстрактную фабрику, на 150 кейсов. Я уже молчу, что из твоих высеров сразу понятно, что ты никогда не смотрел в исходнике ангуляра и вообще не понимаешь что там происходит. Поэтому, дерни нахуй отсюда, клоун шизоидный.
Аноним 12/02/21 Птн 18:10:01 #354 №1938794 
>>1938787
Ну вообще весь этот вопрос можно свести к:
кто крутой пацан?
задрот, который в своей жизни ебал только байты или стартапер, которые за месяц из говна и палок делает продукт, который работает и приносит деньги инвесторам?
Аноним 12/02/21 Птн 18:10:44 #355 №1938796 
>>1938792
>фабричный метод
fix
Аноним 12/02/21 Птн 18:12:16 #356 №1938801 
>>1938746
бамп вопросу
Аноним 12/02/21 Птн 18:13:01 #357 №1938803 
>>1938766
> эти выяснения на митингах в какой цвет кнопочку покрасить с ебалом аля тут компилятор свой пишут.
Ну так правильно выбранный цвет кнопочки как правило приносит бизнесу денег больше, чем дохуя оптимизированный компилятор
Аноним 12/02/21 Птн 18:14:47 #358 №1938804 
>>1938780
Спасибо за утешение, думал я туповат для программирования.

>>1938782
Типо того. Закончил читать сейчас вторую часть Кантора, ту что про браузер. Вроде весь необходимый технический арсенал для выполнения задачи есть. Ивент листенеры поинтердовн/мув/ап, вычисление координат различных объектов, координаты ивент таргетов - все это знаю. Но как именно спрограммировать используя все это - не выходит понять.

Короче, не по сеньке шапка пока. Если не смогу по итогу, то не будут рассраиваться из-за этого.
Аноним 12/02/21 Птн 18:15:36 #359 №1938806 
>>1938801
Я вообще не ебу что такое y-combinator.
Аноним 12/02/21 Птн 18:16:12 #360 №1938807 
>>1938792
>смехотворный вкатун

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



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

По всей видимости исходники ангуляра - единственные исходники крупного фреймворка которые ты смотрел. Заглянул, испугался, закрыл, а теперь всю жизнь будешь срать о том как там всё хуево. Так я тебе открою тайну, исходники ангуляра ничем не отличаются от исходников других фреймворков написанных с использованием грамотной архитектуры и статической типизации.
Аноним 12/02/21 Птн 18:17:25 #361 №1938808 
>>1938803
Это все вообще дизайнеры должны придумывать и подробно расписывать, а потом какой-нибудь ПМ и техлид должны максимально точно расписывать тасочки на всех. Тебя по сути вообще ебать не должно, какие там кнопки будут, это не твоя работа.
Я например как-то работал на галере, там даже мобилки не рисовали.
Аноним 12/02/21 Птн 18:17:56 #362 №1938809 
>>1938794
Крутой пацан это тот кто выбирает качественный, готовый код, при необходимости может дополнить его своим высокопроизводительным и хорошо читаемым кодом, а также предоставит готовый продукт в течении месяца и тем самым принесёт прибыль инвесторам.
Т. е., как всегда - побеждает золотая середина.
Аноним 12/02/21 Птн 18:18:59 #363 №1938811 
>>1938807
>подрыв вайтишного борщехлеба с синдромом даннинга-крюгера
Вкатыш, спок.
Аноним 12/02/21 Птн 18:19:37 #364 №1938812 
>>1938808
Правда, что в мухосранских местных небольших конторах могут задачу дизайна повесить на фронтендера?
Аноним 12/02/21 Птн 18:19:52 #365 №1938813 
>>1938746
>>1938801
Зачем тебе это? В проде такое не используется, да и вообще где-либо за рамками "хыыы прикольна". Поэтому вряд ли ты услышишь советов в треде, который состоит в основном из дебилов вроде этого >>1938792
Аноним 12/02/21 Птн 18:19:57 #366 №1938814 
>>1938804
Ну шныри-дизайнеры распишут, а фронтендо-боги будут с бокалами коньяка за 300кк обсуждать как лучше прописать цвет: через rgb, hex или hsl.
Аноним 12/02/21 Птн 18:21:07 #367 №1938816 
>>1938813
тебя ебёт?
Аноним 12/02/21 Птн 18:21:37 #368 №1938817 
>>1938811
>этот слив мамкиного фантазера

Что и требовалось доказать. Главное постарайся сдерживать себя, а то ведь здесь зачастую люди не опытные, начнут верить твоим нелепым высерам.
Аноним 12/02/21 Птн 18:21:54 #369 №1938819 
>>1938722
>Выходит, что введенный в ES6 синтаксис "классов" и правда фуфло?
Да не, норм сахарок. Визуально поля и методы обьявляются с одном скоупе, заместо ванильного пердолинга с конструкторами прототипов. Плюс тайпскрипт автоматом лепит к классу тип, так что его можно одновременно использовать и как фабрику и как интерфейс.
Аноним 12/02/21 Птн 18:21:56 #370 №1938820 
>>1938812
Ну такое конечно только прям совсем в нищих веб студиях, но мне иногда кидали какой-то криво высранный макет и я ебал себе и другим голову, чтобы сделать нормально.
Но вся боль в том, что это никто не ценит и всем похуй. Ты за это не бабла больше не получишь, не дополнительного почета. Поэтому, такая контора - говно.
Аноним 12/02/21 Птн 18:22:53 #371 №1938821 
>>1938812
Да. Также как и правда то, что в крупных компаниях вёрстка и всё что связано с HTML делаются отдельными людьми, а фронтендеры отвечают только за интеграцию с фреймворком.
Аноним 12/02/21 Птн 18:22:55 #372 №1938822 
>>1938813
>>1938817
>Этот подрыв семена
Прими успокоительных, сычуш, полегчает.
Аноним 12/02/21 Птн 18:24:16 #373 №1938825 
>>1938822
По собственному опыту судишь? Открою для тебя тайну, не все на успокоительных сидят и стоят на учете в псих. диспансере.
Аноним 12/02/21 Птн 18:25:27 #374 №1938828 
>>1938821
>вёрстка и всё что связано с HTML делаются отдельными людьми

Ебать... Это по-ходу отдельная каста опущенных. К ним, наверное, в офисе прикасаются только ногами.
Аноним 12/02/21 Птн 18:27:13 #375 №1938832 
>>1938764
>серверные темплейты
Так среакт уже собирается серверные компоненты интегрировывать.
Аноним 12/02/21 Птн 18:28:53 #376 №1938836 
>>1938821
>в крупных компаниях вёрстка и всё что связано с HTML делаются отдельными людьми
У крупных компаний есть еще одно лицо - огромное количество легаси кода, дизайн-макетов и верстки, написанного одним человеком на джава апплетах сука блятьвся логика крутитя вокруг ебучей джавы и запросы делаются через ActiveXObjectСамо собой, работает только в IE
Аноним 12/02/21 Птн 18:30:08 #377 №1938838 
>>1938774
Кантора что ли читаешь? Ясен хуй ничего не поймёшь, там жабаскрипт в отрыве от HTML/CSS научивают, лол.
Аноним 12/02/21 Птн 18:30:27 #378 №1938839 
>>1938828
Ну за такое отношение тебя сразу попрут. В офисе тебе нужно постоянно улыбаться, относится ко всем с уважением, приходить на помощь и т. д. В целом их все хвалят, говорят что они крутые и полезные.
Аноним 12/02/21 Птн 18:31:07 #379 №1938841 
>>1937210
Ничего, это тырпрайз говно, которое юзают для формочек, инфа по нему разбросана веером по всяким бложикам.
Лучше сидеть и пилить свои проекты.
Аноним 12/02/21 Птн 18:31:21 #380 №1938842 
>>1938774
>дрэг-н-дроп слайдер с автовыравниванием
Так тебе верстку учить надо, эта хуйня пилится на нативном жс в пару десяток строчек
Аноним 12/02/21 Птн 18:31:54 #381 №1938843 
>>1938838
Это только в первой части. Вторая часть он про браузер, дом, хуё-мое, там все переплетено.
Аноним 12/02/21 Птн 18:33:55 #382 №1938846 
>>1938843
DOM опять-таки только в отрыве от HTML/CSS описывают.
Аноним 12/02/21 Птн 18:34:14 #383 №1938847 
>>1938839
Как к детям - даунам, короче.
Аноним 12/02/21 Птн 18:34:43 #384 №1938848 
>>1937210
Статьи на медиуме, статьи на indepth.dev, на indepth.dev есть серия статей про проверку изменений, как раз для продвинутого уровня. Отдельно почитай про rxjs, разберись со всеми операторами, попрактикуйся, потому что на собесах этому удиляют отдельное внимание и если ты будешь круто манипулировать функционалом этой библиотеки, то на неточности относительно знаний ангуляра закроют глаза.
Аноним 12/02/21 Птн 18:35:18 #385 №1938849 
>>1938839
У тебя неверное представление.
Нужно лизать жопу манагерам и лидам. На нижестоящих можно ссать и срать - за это ничего не будет, если как следует жоп нализался.
Аноним 12/02/21 Птн 18:35:51 #386 №1938850 
>>1938848
почему-то в етом итт треде все думают что ты задал вопрос то ты вкатун или как минимум менее опытен чем тот кто тебе ответит
Аноним 12/02/21 Птн 18:37:38 #387 №1938852 
>>1938850
>один вкатыш думает, что вопрос ему задал другой более вкатунский вкатыш, чем он сам

Классика.
Аноним 12/02/21 Птн 18:39:11 #388 №1938853 
>>1938849
У нас в код оф кондакт написано, что нельзя дарить подарки людям которые стоят выше тебя по должности и чье мнение может оказывать влияние на твоё продвижение по службе.
Аноним 12/02/21 Птн 18:40:17 #389 №1938855 
>>1938832
и правильно делают.
spa это конечно круто, но для 90% вебсайтов это избыточно + гугл индексация
Аноним 12/02/21 Птн 18:40:37 #390 №1938856 
>>1938850
Потому что задав вопросы ты ничего не написал о своём уровне, а профилей пользователей как на твоих любимых пикабу и вконтакте, здесь нет.
Аноним 12/02/21 Птн 18:42:01 #391 №1938858 
>>1938856
я написал продвинутого уровня,а ты мне советуешь rxjs подрочить
спосибо подрочил
Аноним 12/02/21 Птн 18:42:33 #392 №1938859 
JSэры, недавно на стриме у одного жс -гуру Тимура Шемсединова услышал, что JS -это ассемблер нашего времени
Можете пояснить, что он имел в виду под этим?
Аноним 12/02/21 Птн 18:42:41 #393 №1938860 
>>1938853
Ну у вас какая-то корпоративщина значит. Это может быть даже и плюс.
Я как-то работал на галере. Там продвижение по службе было тесно связано с тем, ходишь ли ты в курилку, бухаешь ли ты с начальством и лижешь ли ты жопы манагерам и лидам.
Аноним 12/02/21 Птн 18:43:02 #394 №1938861 
>>1938859
>Тимура Шемсединова
твой протыклассник?
Аноним 12/02/21 Птн 18:44:04 #395 №1938862 
>>1938859
Хуй знает. Может, что на чистом жс пишут какие-то высокоуровневые абстракции типа кучи фреймворков под разные платформы?
Аноним 12/02/21 Птн 18:44:16 #396 №1938863 
>>1938858
Ты написал про уровень материалов, которые хочешь почитать, скотина тупорылая, я же говорю про твой собственный уровень.
>а ты мне советуешь rxjs подрочить
Проиграл. Ты думаешь, что знаешь его на продвинутом уровне? Сразу видно чмоху, которая кроме map и его разновидностей ничем не пользуется.
Аноним 12/02/21 Птн 18:45:07 #397 №1938864 
>>1938863
че обзываешься говно? иди на хуй
Аноним 12/02/21 Птн 18:45:20 #398 №1938865 
>>1938863
Пиздец, ангулярошиз тут так каждый день так на анончиков срывается? Ебанутый овощ какой-то.
Аноним 12/02/21 Птн 18:46:00 #399 №1938867 
Mobx
Аноним 12/02/21 Птн 18:46:52 #400 №1938868 
>>1938867
это скрипт делает?
можно ли написать бота, который будет постить на двач по кд? или двач слишком защищен от этого?
Аноним 12/02/21 Птн 18:47:49 #401 №1938869 
>>1938864
К залётной мелкобукве с двузначным IQ только такое отношение, привыкай.
>>1938865
Нет, пока только тебя проткнул, да так что ты всё никак не успокоишься.
Аноним 12/02/21 Птн 18:48:05 #402 №1938870 
>>1938859
Тимур кстати идею middleware в ноде обосрал и сказал что это антипатерн. Он целую лекцию по этому выпустил, все никак не посмотрю.
Аноним 12/02/21 Птн 18:48:11 #403 №1938872 
Стикер
>>1938868
Аноним 12/02/21 Птн 18:48:22 #404 №1938873 
>>1938868
>двач слишком защищен от этого?
Защищен гугл-капчей + ограничением на количество постов в единицу времени с одного IP.
Аноним 12/02/21 Птн 18:48:32 #405 №1938874 
>>1938868
Можно. Даже капчу не надо обходить, если не слишком часто постить.
Аноним 12/02/21 Птн 18:48:37 #406 №1938875 
>>1938869
ты злобный ебнутый шизик(кусок говна)
Аноним 12/02/21 Птн 18:50:46 #407 №1938877 
Стикер
Давайте жить дружно
Аноним 12/02/21 Птн 18:52:14 #408 №1938880 
Блять чем больше читаю всякие погромистские блохи, тем больше утверждаюсь в том, что люди, которые там пишут статьи нихуя НИХУЯ НИХУЮШЕНЬКИ не понимают в программировании. Речь идет не о каких-то сложных концептах, а о самых базовых и банальных вещах. Такое чувство, что эти статьи пишут не настоящие программисты, а ебаные рерайтеры, которые в лучшем случае цикл от переменной в состоянии отличить.
Вот просто блять заходишь почитать о чем-то новом для себя, при этом ты уже имеешь какое-то минимальное понимание вопроса, читает статью и просто охуеваешь какая ебаная чушь там написана, ебаный в рот, господи боже. И хуже всего, что эти пидорасы засрали все нахуй, абсолютно все. Просто нахуй по запросу в гугле такая чушь выпадает в поиске что просто охуеть. Найти нормальную статью в котором кратко что-то поясняется, обозревает новая фича и т.д. это просто как блять в деревенском толчке, в который со сталинских времен ходит срать вся деревня найти жемчужину. Просто блять пиздец. Зато когда находишь, просто физически срать хочется от радости.
Аноним 12/02/21 Птн 18:52:58 #409 №1938881 
>>1938875
Не забудь мамке в юбку поплакаться.
Аноним 12/02/21 Птн 18:55:47 #410 №1938882 
>>1938880
Опять на тебя таблеток не хватило?
Аноним 12/02/21 Птн 18:55:52 #411 №1938883 
>>1938881
ну тебе еще осталось про мой несобранный портфель пошутить
уеба
Аноним 12/02/21 Птн 18:56:51 #412 №1938884 
>>1938883
Воздержусь, а то ведь выпилишься, а мне срок за доведение пришьют.
Аноним 12/02/21 Птн 18:57:34 #413 №1938886 
Заебали сраться долбоебы, идите пива возьмите и похавачать что-нибудь, пятница как-никак.
Аноним 12/02/21 Птн 18:58:01 #414 №1938887 
>>1938884
остроумным человеком я бы тебя не назвал
Аноним 12/02/21 Птн 18:58:42 #415 №1938888 
этому треду не хватает модерации
Аноним 12/02/21 Птн 18:58:58 #416 №1938889 
>>1938869
Шизик, спок.
Аноним 12/02/21 Птн 18:59:31 #417 №1938890 
>>1938888
соскучился по крепкому хую хозяина в своей сраке?
Аноним 12/02/21 Птн 19:29:06 #418 №1938898 
>>1938890
Кто о чём, а ангуляродебил о хуях в сраке.
Аноним 12/02/21 Птн 19:31:34 #419 №1938899 
>>1938898
срака смешное слово я просто не знаю как его можно было бы еще использовать в такой ситуации
что туда еще поместить окромя елды модератора?
Аноним 12/02/21 Птн 19:33:22 #420 №1938902 
>>1938898
Хватит сраться о технологиях.
каждая имеет свою сферу применения
ангуляр - крупные проекты с сильными спецами
рекат - стартапы одногодки
вью - туду листы
Аноним 12/02/21 Птн 20:01:54 #421 №1938919 
>>1938902
Поправлю коллегу.

ангуляр - крупные проекты с сильными спецами
рекат - стартапы одногодки с веб-макаками вместо спецов
вью - туду листы с васянами после курсов
Аноним 12/02/21 Птн 20:21:17 #422 №1938931 
>>1938855
Оно никак не будет противоречить концепции SPA. И уже давно есть решения, реализующие SPA + server-side rendering. Next для реакта, Nuxt для Vue, Universal для ангуляра. Даже у свелта есть SSR
Аноним 12/02/21 Птн 20:30:37 #423 №1938935 
>>1938870
Странно, всегда же в експрессе миддлвары юзали, удобный концепт вроде
Аноним 12/02/21 Птн 20:32:29 #424 №1938938 
>>1938919
На реакте прекрасно пишется всё то же, что и на ангуляре. Поддержка тс отличная, комьюнити крупное с всевозможными решениями и инструментами.
Аноним 12/02/21 Птн 20:44:20 #425 №1938943 
> паттерны
Ору нах с шизиков. Всегда писал на жс чистые функции на 1к-3к строк. Сеймы?
Аноним 12/02/21 Птн 20:45:34 #426 №1938944 
>>1938938
>аргументировано отвечать тролю
Аноним 12/02/21 Птн 20:47:33 #427 №1938947 
>>1938703
Как вы делаете такие няшные скрины? Это какой плагин на vsc?
Аноним 12/02/21 Птн 20:51:58 #428 №1938949 
>>1938943
>ору с шизиков с их вилками и ложками. Всегда жрал говно руками. Сейм?
Аноним 12/02/21 Птн 20:53:10 #429 №1938950 
1603051431341.png
>>1938943
>Всегда писал на жс чистые функции на 1к-3к строк
Аноним 12/02/21 Птн 20:55:36 #430 №1938951 
image
блять когда вижу код с рекурсиями, многими вложенностями, глаза нахуй разбегаются, непонимаю что куда возвращает.

Хотя синтаксис понимаю, но когда много кода - сложновато все интерпритировать на той же скорости что и движок  JS

Опытные скажите, вы такое на лету читаете или тоже сидите разглядываете что куда возвращается?
Аноним 12/02/21 Птн 20:57:47 #431 №1938953 
>>1938951
>Опытные скажите, вы такое на лету читаете или тоже сидите разглядываете что куда возвращается?
На лету. С опытом приходит.
Аноним 12/02/21 Птн 20:59:45 #432 №1938954 
>>1938953
сколько у тебя опыта?
Аноним 12/02/21 Птн 21:01:07 #433 №1938956 
>>1938954
6 лет пхп
Аноним 12/02/21 Птн 21:02:05 #434 №1938957 
>>1938954
В кодинге? Ну года три уже (писал олимпиадные задачки на плюсах), в жс около 4 месяцев. Понимание рекурсии появилось гдет в 16-17 лет на занятиях в моей шараге.
Аноним 12/02/21 Птн 21:03:53 #435 №1938959 
>>1938951
Рекурсия - антипаттерн даже в полноценных функциональных языках, а уж тем более в жсе.
Больше двух уровней вложенности обычно надо разбивать на несколько функций.
На твоем пике - говнокод, сейчас бы нахуй проверять количество принимаемых аргументов в динамическом языке с динамически определяемой function arity, и при этом двумя строчками выше писать ...handlers в этих же аргументах (!).
Аноним 12/02/21 Птн 21:05:13 #436 №1938961 
>>1938959
неосиливший рекурсию чуть посложнее фибоначи, вспукнул
Аноним 12/02/21 Птн 21:05:41 #437 №1938962 
>>1938959
шиз, это классика это знать надо!
https://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%B8%D0%BC%D0%BE%D1%80%D1%84%D0%B8%D0%B7%D0%BC_(%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0)#Ad-hoc-%D0%BF%D0%BE%D0%BB%D0%B8%D0%BC%D0%BE%D1%80%D1%84%D0%B8%D0%B7%D0%BC
Аноним 12/02/21 Птн 21:06:04 #438 №1938964 
>>1938959
>Рекурсия - антипаттерн
Так никто и не спорит, просто есть задачи которые рекурсию решаются в десятки, а то и востни раз быстрее чем фориками и while
Аноним 12/02/21 Птн 21:07:31 #439 №1938965 
>>1938949
Ну я лучше подумаю над архитектурой, чем буду изучать очередные "очень нужные" ложки и вилки.
Чем проще и понятнее мой код, чем больше чистых функций - тем лучше его поддержка.
Аноним 12/02/21 Птн 21:10:27 #440 №1938970 
мне кажется что жс тред меня тролит своей тупизной
вы же не можете быть такими тупыми ботами
вы специально пишите хуйню чтобы меня раздразнить
Аноним 12/02/21 Птн 21:10:33 #441 №1938971 
>>1938965
>ем больше чистых функций - тем лучше его поддержка.
Вот кстати двачую. Сколько я не видел попыток уопроться в неебаца ООП и функциональщину - всегда получалась глина. С чистыми функциями всегда все просто и понятно
Аноним 12/02/21 Птн 21:11:42 #442 №1938972 
>>1938965
архитектура - это функция сеньера или архитектора.
Аноним 12/02/21 Птн 21:12:06 #443 №1938973 
>>1938970
у тебя синдром самозванца, тебе лучше тут не сидеть
Аноним 12/02/21 Птн 21:12:32 #444 №1938974 
>>1938973
заткнись, говно
Аноним 12/02/21 Птн 21:13:19 #445 №1938976 
>>1938971
простая и понятная чиста ф-ия
const foo = f => (g => g(g))(g => f((x) => g(g)(x)))
Аноним 12/02/21 Птн 21:13:24 #446 №1938977 
>>1938970
чувак, веб это дно разработки, а жс это дню веба
чего ты ждал?
Аноним 12/02/21 Птн 21:14:15 #447 №1938978 
>>1938974
хорошо, но вот на всякий случай статью по теме
https://vc.ru/hr/163533-sindrom-samozvanca-podrobnyy-razbor-nauchnye-issledovaniya-harakteristiki-testy-i-kak-s-nim-spravitsya
лучше не затягивай, дальше хуже бедет, депрессия, ркн и т.д.
Аноним 12/02/21 Птн 21:14:18 #448 №1938979 
>>1938961
Рекурсию любят как раз именно ньюфаги, которые ее видели только в этих числах фибоначчи.
>>1938962
Мелкобуквенный ньюфажный дурачок, научись словами говорить, а не линковать что тебе в голову случайно стукнуло. В жсе нет никакой разницы, передаешь ты 0-arity функции 0 аргументов или 120, и смысла делать шизоидную проверку на Function.length нет никакого и никогда.
Аноним 12/02/21 Птн 21:14:50 #449 №1938980 
>>1938979
https://vc.ru/hr/163533-sindrom-samozvanca-podrobnyy-razbor-nauchnye-issledovaniya-harakteristiki-testy-i-kak-s-nim-spravitsya
Аноним 12/02/21 Птн 21:15:13 #450 №1938981 
>>1938965
>1к строк
>проще и понятнее
Таблетки выпил?
Аноним 12/02/21 Птн 21:15:32 #451 №1938982 
image.png
т.к. рекурсия анти-паттерн а чистые функции это всегда просто и понятно вот вам фибонач без рекурсии с чистыми функциями
по-моему все просто и понятно, а главное - без анти паттернов
Аноним 12/02/21 Птн 21:16:03 #452 №1938983 
>>1938977
че ты там пукнул сладкий? иди на хуй твое мнение никому не интересно
>>1938978
говно не воняй говно
Аноним 12/02/21 Птн 21:16:30 #453 №1938984 
>>1938970
Сказала мелкобуква.
Аноним 12/02/21 Птн 21:17:06 #454 №1938985 
>>1938982
>>1938976
Говно, ты? Если нормально обозначить переменные и не писать стрелки, которые сразу возвращают другие стрелки то все вполне читаемо и понятно
Аноним 12/02/21 Птн 21:17:33 #455 №1938986 
>>1938985
ну давай обозначь
Аноним 12/02/21 Птн 21:17:56 #456 №1938988 
>>1938984
не троль плз)
Аноним 12/02/21 Птн 21:17:57 #457 №1938989 
image
Кажется в треде горячо. Пора охладить его мемами.
Аноним 12/02/21 Птн 21:18:13 #458 №1938990 
как же ору нахуй с пятничного форума
Аноним 12/02/21 Птн 21:18:31 #459 №1938991 
image
Аноним 12/02/21 Птн 21:19:32 #460 №1938996 
Сейчас бы выёбываться знанием рекурсий в скриптовом языке, когда в реальных языках пишут рекурсивные абстрактные фабрики.
Аноним 12/02/21 Птн 21:19:47 #461 №1938997 
Да уж, ребята. Этому не научат на курсах fullstack веб разработчиков
Аноним 12/02/21 Птн 21:25:49 #462 №1939009 
>>1938971
> всегда получалась глина
Мне кста кажется что это сортоф шизофрения, когда выдумывается очередной паттерн и зачем-то его развивают.
Ради чего? Почему? Проверили хотя бы эмпирически, что это кому-то нужно и улучшает хоть что-то.

>>1938972
Как ты будешь код писать, если архитектуру не знаешь? Лол

>>1938981
Чистота функций обеспечивает читаемость. Всё однозначное и проверяемое с любого места в коде.
Аноним 12/02/21 Птн 21:26:23 #463 №1939010 
>>1939008
Пошел нахуй отсюда, пидрила я твою мать ебал
Аноним 12/02/21 Птн 21:40:25 #464 №1939014 
>>1938982
>чистые функции
>нахуярил лямбд и однобуквенных переменных.
Аноним 12/02/21 Птн 21:42:55 #465 №1939015 
>>1939014
>>1938985
вы реально очень тупые отбросы
Аноним 12/02/21 Птн 21:50:59 #466 №1939019 
>>1939015
Очень интересно слушать про отбросов от мелкобуквы с лямбдами заместо функций.
Аноним 12/02/21 Птн 21:59:55 #467 №1939023 
>>1939015
> чистые функции
> стрелочки
Ору с шизофреника
Аноним 12/02/21 Птн 22:24:44 #468 №1939042 
Вронтенд или бэк на ноде?
Аноним 12/02/21 Птн 22:34:31 #469 №1939058 
>>1935813 (OP)
Аноны, насколько актуально для front end разраба знания верстки по макету, БЭМ методологии, SASS?
Аноним 12/02/21 Птн 22:35:18 #470 №1939061 
>>1935813 (OP)
Как задолбало это IT, я ещё не вкатился, а уже перегорел
Аноним 12/02/21 Птн 22:46:57 #471 №1939068 
>>1939058
>>1939061
>>1939042
шиз у вас загон есть в воркаче, это тред не для тебя, тут смузихлебы сидят
Аноним 12/02/21 Птн 22:48:07 #472 №1939069 
>>1939068
А смузихлёбы это кто?
Аноним 12/02/21 Птн 22:52:32 #473 №1939071 
>>1939069
те кто победили в голодных играх

те которые еще играют, тут - https://2ch.hk/wrk/res/2216769.html
Аноним 12/02/21 Птн 22:55:58 #474 №1939073 
>>1939071
И чем вы на это смузи зарабатываете?
Аноним 12/02/21 Птн 23:06:12 #475 №1939081 
>>1939058
БЭМ - это такой же отвратный высер яндекса, как и сам яндекс, яндекс-браузер, яндекс-почта и прочие. Полностью заменяется нормальной системой модулей, то есть тем же SASS'ом. Он был бы более-менее актуален в 2009 (если бы о нем тогда кто-то знал, кроме самого хуяндекса), но в 2021 эту парашу использовать - это быть отбитым на голову.
Аноним 12/02/21 Птн 23:13:46 #476 №1939085 
Node.js это то что используется синтаксис JS и интерпретируется как C++, C# ? типо JS может работать после него не только в вебе?
Аноним 12/02/21 Птн 23:21:01 #477 №1939089 
>>1939081
И БЭМ, и Sass не нужны при правильном использовании современного css.
Sass - это вообще причина 90% падений при сборках у нас в конторе, ума не приложу, как можно было высрать такое глючное говнище.
Аноним 12/02/21 Птн 23:23:29 #478 №1939092 
>>1939089
дело в сборщике наверн а не в сасс?
Аноним 12/02/21 Птн 23:26:18 #479 №1939096 
>>1939085
Это серверный язык со своими специально пропердоленными апи для работы с серверами и файловой системой. Интерпретируется он, не поверишь, в nodejs.
Аноним 12/02/21 Птн 23:31:24 #480 №1939100 
>>1939089
>И БЭМ, и Sass не нужны при правильном использовании современного css.
Попробуй напиши сколько-нибудь сложные правила без вложенностей селекторов. Да и сассовские переменные хороши для значений, которые важны только при компиляции.
Аноним 12/02/21 Птн 23:31:44 #481 №1939101 
>>1939096
короче он на базе js сделан? но там не ванильный js?
Аноним 12/02/21 Птн 23:32:55 #482 №1939102 
>>1939100
CSS Modules есть, они удобнее
Аноним 12/02/21 Птн 23:49:52 #483 №1939112 
>>1939101
Ванильный жс только в спеке существует, скриптики же пишутся на движках типа v8/spidermoneky/nodejs, которые более-менее пытаются ей следовать.
>>1939102
Никакого отношения к вложенностям селекторов и переменным не имеет.
Аноним 12/02/21 Птн 23:58:27 #484 №1939113 
>>1939112
Имею в виду удобнее бэма и чистого css
Аноним 13/02/21 Суб 00:03:16 #485 №1939118 
>>1938938
>На реакте прекрасно пишется всё то же, что и на ангуляре

Тоже самое можно сказать и про чистый JS, и про JQuery.

>либа написана на JS
>Поддержка тс отличная

Найс маняфантазии.

>комьюнити крупное с всевозможными решениями и инструментами.

Это комьюнити не успевает танцевать под дудку смузихлебов из фейсбука. В то время как в ангуляре есть всё из коробки.
Аноним 13/02/21 Суб 00:04:09 #486 №1939120 
>>1939112
Все разобрался! Благодарю анон, хорошего тебе дня.

Понял зачем vscode просит node.js установить это типо движок через которыц код интерпретируется в консоль
Аноним 13/02/21 Суб 00:11:33 #487 №1939124 
>>1939089
>Sass - это вообще причина 90% падений при сборках у нас в конторе, ума не приложу, как можно было высрать такое глючное говнище.
Ты про говнокод, написанный твоей конторой? Что там может упасть в принципе, ебанутый блять?
Аноним 13/02/21 Суб 00:16:28 #488 №1939125 
>>1939120
VSCode требует ноду потому что он собран на электроне, у которого нода в зависимостях. Требуется не столько для консольки, сколько для операций с файловой системой, это же практически IDE ведь. Электрон кстати это комбайн из браузерного жс и ноды.
Аноним 13/02/21 Суб 01:05:23 #489 №1939149 
>>1935904
У меня наоборот. Пишу и кажется что говно. Смотрю чужой код и кажется ещё большим говном. Переделываю по сто раз и кажется говном. Сложно что-то закончить из-за этого. А спустя несколько месяцев возвращаюсь править старый и забытый проект и думаю - бля какой же я молодец, неужели я так удобно и понятно сделал, ебать годнота
Аноним 13/02/21 Суб 01:07:11 #490 №1939152 
>>1939118
> Тоже самое можно сказать и про чистый JS, и про JQuery.
Только в редких случаях. Из адекватных компаний почти никто так не делает и берут реакт/вью/ангуляр.

> Найс маняфантазии.
Это у тебя видимо маняфантазии по поводу того, что в реакте плохая поддержка ТС. Создатели ТСа даже сами добавили поддержку JSX прямо в ТС

> Это комьюнити не успевает танцевать под дудку смузихлебов из фейсбука. В то время как в ангуляре есть всё из коробки.
Хуле там успевать, в реакте медленно выкатыают обновления. Так что все успевают.
Аноним 13/02/21 Суб 01:19:39 #491 №1939161 
Как в реакте можно вызвать функцию, которая находится в дочернем компоненте?

У меня в дочернем компоненте есть отправка формы и кнопка для неё. Но я не знаю как можно эту кнопку вынести из формика, да еще и наверх её поднять, чтобы она нажималась из родительского компонента. Отправка и форма находятся в разных блоках. Переделывать вертску и перемещать эту кнопку в другой блок просто ебнешься нахуй. А как тригернуть одну кнопку в child кнопкой из parent я не знаю
Аноним 13/02/21 Суб 01:21:30 #492 №1939163 
>>1939152
>в реакте плохая поддержка ТС

Реакт написан на ТС? Нет. Значит твоя поддержка это костыли вида x = (x:any):any => {}
Аноним 13/02/21 Суб 01:22:57 #493 №1939164 
>>1939161
По вопросу сразу понятно, что речь идёт об ущербном среакте.
Аноним 13/02/21 Суб 01:31:58 #494 №1939171 
xlogika-chelpanov1917.jpg.pagespeed.ic.UCSsHarn1.jpg
>>1939163
>Значит твоя поддержка это костыли вида x = (x:any):any => {}
Нет, не значит.
Аноним 13/02/21 Суб 01:49:27 #495 №1939180 
>>1939171
Твой учебник логики хуйня кстати, не позорься

>>1939164
Рад что ты один такой умный знаешь как надо
Аноним 13/02/21 Суб 01:55:24 #496 №1939187 
>>1939180
> Твой учебник логики хуйня кстати, не позорься
Это не мой, но тебе даже такой подойдёт.
Аноним 13/02/21 Суб 01:56:03 #497 №1939188 
1542609926291.png
Кста, поцаны, а пикрелейтед норм? Не хочу среактом пользоваться, он воняет.
Какакая вообще годнота есть из маленьких, но гордых, фреймворков?
Аноним 13/02/21 Суб 01:56:24 #498 №1939189 
>>1939180
>знаешь как надо

Да, надо на Ангуляр переходить.
Аноним 13/02/21 Суб 01:56:50 #499 №1939190 
>>1939188
Светл, очевидно.
Аноним 13/02/21 Суб 02:11:29 #500 №1939196 
>>1939190
Он же для пидоров или вроде того. Мне кажется если буду использовать, то из ачька будет сперма течь.
Аноним 13/02/21 Суб 02:12:16 #501 №1939197 
>>1939188
Svelte, Solid.
Аноним 13/02/21 Суб 02:27:59 #502 №1939203 
>>1939161
>>1939164
>>1939180
>>1939189
Не надо никуда переходить, в реакте это легко делается через useRef. Присваиваешь ref чилдрену и потом в родителе вызываешь ref.current.someChildMethod()
Аноним 13/02/21 Суб 02:35:36 #503 №1939207 
>>1939197
А с солидом я не стану пидором? Это серьезный ща вопрос.
Аноним 13/02/21 Суб 03:12:25 #504 №1939212 
>>1939188
Бля, инферно фин с шизофренией делает. Нихуя не айс. Нахуй инферно.
Аноним 13/02/21 Суб 03:28:39 #505 №1939213 
image.png
>>1939203
>>1939161
Все так дружище, вот только реализовал. Пиздец, тому челу с ютуба, который показал эту хуйню нужно нобелевку дать. Я просто в ахуе с того, как этот банальнейший паттерн не объясняют с ходу, вот как только ты в реакт погрузился. Еб вашу мать, я часа 3 проебался с этим. Не грех и наебениться
Аноним 13/02/21 Суб 03:31:55 #506 №1939214 
>>1939197
Проблема всех этих сиюнаносекундных фреймворков в том, что реакт выпустит очередной новодел в виде хуков, и всё это говно улетит в каменный век за 1 день.
Аноним 13/02/21 Суб 03:41:11 #507 №1939215 
>>1939214
Будто от этого реакт кому-то нужен станет.
Аноним 13/02/21 Суб 03:58:34 #508 №1939222 
>>1939215
Но именно так и просиходит лол. Он именно поэтому и становится нужен, как ты ни корчись
Аноним 13/02/21 Суб 04:02:45 #509 №1939224 
>>1939222
Нет, он всем нужен только потому что его фейсбук пердолит и пользователей много. Для интепрайся это надежность типа.
А хуки реакта задолго до реакта существовали и никому нахуй ненужны были. Они и вуе есть, например.
Аноним 13/02/21 Суб 04:12:10 #510 №1939225 
>>1939224
>Они и вуе есть
Они там после реакта появились
Как и всё в вуе. А вуе натив это вообще траханье трупа
Аноним 13/02/21 Суб 04:16:25 #511 №1939226 
>>1939225
Хуки появились в кнокоутжс, чел, 10 лет назад. Просто реакт эту хуйню откапала и она получила популярность.
Аноним 13/02/21 Суб 04:21:10 #512 №1939227 
>>1939226
Почему никто кроме реакта тогда их не откопал?
Аноним 13/02/21 Суб 04:27:41 #513 №1939228 
>>1939227
Откопали же. Десятки библиотек есть и было. Всё дело в популярности.
Спасибо реакту за пиар ништяка, хуле, пусть продолжает дальше копаться и исследовать. А использовать я буду солид, например. Или что-то ещё.
Аноним 13/02/21 Суб 04:31:38 #514 №1939230 
>>1939228
Что рыночек порешает, то и будешь использовать, чел пчел пчелибас
Аноним 13/02/21 Суб 04:39:16 #515 №1939232 
>>1939230
Я сам себе программест, сам делаю продукты конечного потреления. Похваще.
Аноним 13/02/21 Суб 07:12:23 #516 №1939252 
>>1938951
Просто с опытом на ходу читаешь, как книжку.
>>1938959
Рекурсия пригодна в очень небольших случаях. Те, кто ебашит рекурсии не по делу - конченые уебаны, таких нельзя брать на работу.
>>1938964
Ну, зато time complexity от рекурсивного решения увеличивается в разы. Любую рекурсию можно переписать на итеративное решение. Если у тебя будет много данных, то ты заморочишься либо над кешированием рекурсии, либо над написанием в итеративном стиле. Что то, что это будет одинаково всратой задачей. И когда рекурсивную функцию надо будет модифицировать определенным способом, ты жидко пукнешь и пойдешь ее переписывать.
Аноним 13/02/21 Суб 07:20:53 #517 №1939254 
>>1938991
Питер?
Аноним 13/02/21 Суб 07:21:31 #518 №1939255 
>>1937297
> Юзай firebase, чо ты как етот.
Всё, юзаю фаербазе. Остальные просто ПИЗДЕЦ какие сложные и нужно ПИЗДЕЦ как много кода. Просто охуел с того, сколько нужно кода.

Легче потом нанять крутых чувачков, под написание своих крутых фиребази, чем самому ебаться с этим.
Аноним 13/02/21 Суб 07:31:52 #519 №1939256 
https://github.com/pmndrs/zustand
Объясните, что за магия? Стейт менеджер работающий в 7 строк без бойлерплейта? В чем подвох? Почему его не использует вся вселенная?
Аноним 13/02/21 Суб 07:55:39 #520 №1939260 
>>1939256
Зачем?
Все стейт менеджеры и так достаточно легковесны, плюс есть контекст апи в реакте, если хочется чего-то самописного.
Это похоже на очередной велосипед.
Аноним 13/02/21 Суб 08:00:14 #521 №1939262 
shareimage1612423502259.png
>>1939256
Пчел, ето же обёртка над useReducer
Бтв выглядит вполне удобно и читаемо. Уж точно получше всяких effector
Аноним 13/02/21 Суб 08:00:48 #522 №1939263 
>>1939260
Велосипед, снижающий количество бойлерплейта до одной строки импорта? Да еще и в использовании прост настолько, что уже проще просто некуда. Я пока ничем, кроме карго культа использование других стейт менеджеров объяснить не могу
Аноним 13/02/21 Суб 08:10:55 #523 №1939264 
>>1939255
Попробуй Hasura. Это realtime postgres через graphql
Аноним 13/02/21 Суб 08:12:15 #524 №1939265 
>>1939263
Эм, вообще-то редакс тоже просто настолько, что проще некуда. В чем претензия?
Аноним 13/02/21 Суб 08:14:09 #525 №1939266 
gallery-share-1608560906716.png
>>1939265
В том, что даже с redux-toolkit приходится писать больше, чем с обычным mobx

мимо
Аноним 13/02/21 Суб 08:15:00 #526 №1939267 
>>1939266
Мобикс магия какая-то всратая + дохуя килобайт весит, особенно если ещё state-tree юзать
Аноним 13/02/21 Суб 08:17:31 #527 №1939269 
>>1939267
Поэтому придумали mobx-react-lite
Аноним 13/02/21 Суб 08:23:18 #528 №1939271 
>>1939266
Так это обычный бойлерплейт код, установи себе автокомплиты и пиши его за пару секунд. В чем претензия, опять же? Из-за того, что чел написал пару оберток и сократил бойлерплейт на пару строчек для каких-либо действий, ты предлагаешь переписать миллион проектов под него?
Такая всратая хуйня только в башке вебмакак бывает, поэтому нормальные люди бегут от веба как от бубонной чумы.
Аноним 13/02/21 Суб 08:28:53 #529 №1939272 
>>1939271
Переписывать ничего не нужно. Но новое-то зачем на громоздком говне писать?
Аноним 13/02/21 Суб 08:30:20 #530 №1939273 
Ur-PAwurtHM.png
>>1939271
> ты предлагаешь переписать миллион проектов под него?

Ничего такого я не предлагал. Я вообще мысль доносил о том, что делайте выводы, чтобы было удобно писать в будущем и не стрелять себе в ногу
Аноним 13/02/21 Суб 08:33:23 #531 №1939274 
>>1939264
Хмм. Хуй знает. Выглядит прилично вроде.
Какие вообще мнения об этом, использовал в проде, читал? Отличия от фиребазы кроме лицухи?

Мне всё кажется лучший план браузерной игры будет firebase на js клиентах для 95% данных. И сервера игровые подниматься будут тоже набирая инфы с фаербазы. После того как приносить будет прибыль минимально - начать ебаться с нормальной бд и нормальными p2p трафоном вместо цдн/огнебазы.
Аноним 13/02/21 Суб 08:38:08 #532 №1939277 
>>1939274
Пчел, вопрос не по теме, но что ты делаешь в геймдеве? Я имею ввиду как вы именно там игры делаете? Вся визуализация на жабаскрипте или есть какой то готовый движок, на котором вы все пишете? Какие вы технологии используете, что у вас там популярно? Используете web assembly? Потому что для меня это тёмный лес
Аноним 13/02/21 Суб 08:43:20 #533 №1939280 
>>1939272
Ты даун? Нет там никакой громоздкой хуйни. Бойлерплейта немного больше и все. Но это даже в плюс читаемости, ибо меньше магии подкапотной.
Аноним 13/02/21 Суб 08:47:58 #534 №1939281 
>>1939272
>>1939273
Почему я должен знать как работают две либы как разработчик, вместо одной, только потому что в какой-то либе сократилось пара строчек кода для конечного пользователя этим говном?
В чем прорыв этого говна? Стейт на хуках? Ебануться, прорыв года, 10/10
Аноним 13/02/21 Суб 09:02:30 #535 №1939286 
>>1939277
> Я имею ввиду как вы именно там игры делаете?
Оооочень хуево их делают. Никаких ангуляров и редаксов никто не использует, фреймворков почти нет в проде.
> Вся визуализация на жабаскрипте или есть какой то готовый движок, на котором вы все пишете? Какие вы технологии используете, что у вас там популярно?
Phaser и pixijs из того что я писал и в чем работал, а я пишу тридеговнину на threejs как свой проект.
Самый популярный - ванила. На нём написано большинство. Всё остальное, что в топе, то и популярно. Да и движков и не так много, на самом-то деле, фазер и пикси в топе.
Офк немного ебли с шейдерами и математикой есть. Архитектурные проблемы, логические часы и прочее - норма жизни и основное мозгоёбство.
Для серверов используют как ноду/дено, так и плюсы как логику.
> Используете web assembly?
Внезапно js по перформансу теперь как васм, а васм абсолютно бессмысленная хуйня, хз зачем это делают в 2к21 году, если не осилили перформенс.
> Потому что для меня это тёмный лес
Да я сам недавно залетел и особо нихуя не знаю, только логику пишу и делаю серверные ништяки. Пытаюсь сделать своё дерьмо, но ебать я охуел с полного отсутствия толковых технологий.
Аноним 13/02/21 Суб 09:14:50 #536 №1939289 
Стикер
>>1939286
Понял. Копец конечн. Звучит всё конечно хардово, это не лендосы клепать. Удачи тебе, аноний. Уверен у тебя все получится
Аноним 13/02/21 Суб 09:31:04 #537 №1939295 
ПЕРЕКАТ >>1939294 (OP)
ПЕРЕКАТ >>1939294 (OP)
ПЕРЕКАТ >>1939294 (OP)
ПЕРЕКАТ >>1939294 (OP)
ПЕРЕКАТ >>1939294 (OP)
ПЕРЕКАТ >>1939294 (OP)
ПЕРЕКАТ >>1939294 (OP)
ПЕРЕКАТ >>1939294 (OP)
Аноним 13/02/21 Суб 09:43:00 #538 №1939303 
>>1939289
Хз, я тупой пиздец. Самое хардовое для меня - выбор технологий. Ведь я хочу потом, с помощью выбранных технологий, выкатить фреймворк и полный набор инстурментария для анонов, чтобы вкатиться с js разработки в игры было минут 15, и лицензию интерпрайс на 90 процентов прибыли в фонд борьбы с старением
анон 13/02/21 Суб 12:46:25 #539 №1939435 
Регулярные выражения в js и php одинаковый синтаксис же имеют?
Аноним 13/02/21 Суб 12:49:22 #540 №1939442 
>>1939161
Ты какой-то хуйнёй страдаешь, хуле кнопка отправки формы у тебя не в родительском компоненте?
Аноним 13/02/21 Суб 15:03:57 #541 №1939582 
>>1939256
Потому что у нормальных людей есть сервисы с DI и scan из rxjs.
Аноним 13/02/21 Суб 16:03:13 #542 №1939644 
image.png
>>1936827
EGAR TECHNOLOGY?

comments powered by Disqus

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