Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
есть страница "карточки", когда обновляешь эту страницу или заходишь на нее делается api call инфы по этой самой карточке. дальше из даты пришедшей с сервера (напр. свойства name) кладется в useState и это не работает. Я уже не говорю о том, что потом из этой инфы должен сделаться другой api call. Ничего не работает. Есть ли возможность сделать так, чтобы этот запрос отправлялся до всего рендера страницы? то есть был первой строчкой кода? так он лежит в useEffect, а он, как знается срабатывает после рендера
>>2170635 Да я знаю про UseContext, но создавать его ради того чтобы пару пропов перекинуть через переменную тоже кажется излишним, но не уверен, поэтому спрашиваю
>>2170639 Потому что html инпутах никакого другого значения быть не может. Либо храни значение в хуке и доставай так же из хука, либо парси значение инпута.
Ньюфаг в треде. Прошел честно спираченый курс, всю непонятную хуйню посмотрел на learn.javascript.ru. Порешал задачки, придумал себе пару приложений, сейчас занимаюсь их реализацией. Вопрос такой. Вот у меня есть хуева гора плохо структурированной информации в моей башке, вот я реализую при помощи нее поставленные задачи. Как узнать насколько хуево я с этим справился, какие вещи надо было писать кардинально по другому и почему и т.д.
>>2170885 > Как узнать насколько хуево я с этим справился, какие вещи надо было писать кардинально по другому и почему и т.д. Нужен менторнаставник. Товарищ который подскажет где ты проебался. Ну или гитхабы всякие читей по многу. Смотри как делают другие.
>>2170890 Нет, ну серьёзно, ты читал что я спросил? Есть у меня yarn и я с ним работаю уже. Пакеты ставятся, зависимости тянутся, конфиги пухнут. Мне нужно научиться ставить yarn'ом пакеты глобально. Точно так же как это делает команда npm i -g packageName. Или, когда ты ставишь yarn глобальная установка пакетов необязательна. На стаковерфлоу я нашел одно предложение, но оно мне показалось ну очень костыльным.
Я вообще не могу понять this в функциях(да и не в функциях тоже). Перечитал несколько раз статью на хабре, вот енту: https://habr.com/ru/post/515356/ Все равно нихрена не понял. Что такое "контекст исполнения функции"? А в классе? this - указывает на что? На объект? Как этот чёртов абстрактный this понять вообще?
По тайпскрипту - как можно написать функцию, которая принимает массив одного из типов и гарантирует что она вернет элемент именно этого типа? Т.е. если я отправлю массив чисел то функция вернет именно число и типа того
>>2170919 Спасибо, но я тупой. Что значит функция ссылается на объект "window"? Как это - функция ссылается? Подскажи, верно ли я понимаю, что "функция ссылается" - значит, что вот эта часть кода указывает на какую-то зарезервированную область памяти?.. Сорян, если я задаю дебильные вопросы, но мне надо понять.
>>2170885 бери и читай чужой код. это лучший вариант научиться чему-то самому. прямо так можешь гуглить в ютабе "building TODO app" "building delivery APP" и прочее
>>2170913 Просто ебись с этим говном пока не придёт осознание. Смотри разные уроки, читай статьи, практикуй. Все через это проходят. Я этих зисов рот ебал, хуёво сделали, но сейчас уже ничего не исправишь, так уж работает веб, нельзя взять и поменять язык или выкатить сильнонесовместимные обновления языка
>>2170943 (function(){ window.teaName = "Vasya" // или используя переменную let teaName = "Vasya"
function tea(){ return this.teaName }
console.log(window.teaName) // Лет записался в виндов console.log(tea()) // функция возвращает this, который ссылается на виндов
const someObjNotWindow = { teaName: "Petya" } console.log(tea.apply(someObjNotWindow)) // ссылаемся не на виндов, а на свой объект c помощью метода аппле })()
И блять, это самая верхушка, вот прям самая самая. Описанное мною просто описывает некоторые моменты, а есть множества нюансов, которые сотню раз описаны в статейках, пиздуй читать.
>>2170645 → Да это норм. Тебя же наняли не чтобы ты методом тыка решал проблему. Платят среднему кодеру довольно много и именно потому что ожидают от него экспертности. Все эти: не получалось и получилось - это уровень школьника-студента-чела который еще учится, если ты уже работать пошел и все так же тыкаешься-мыкаешься - то держать тебя будут только в конторе, где оч большие проблемы с кадрами, либо в конторах, где устраивают этакое бросание в озеро(вместо ТЗ - ну, вот сделай заебись, как себе и чтоб по красоте, вместо аналитики- ну ты там посмотри что по чем и сделай чтоб заебись, как себе, по красоте и прочее-прочее), в первом случае, когда в конторе решится проблема с кадрами - тебя таки попрут, во втором- проблемы не решаются никогда,, потому в принципе до пенсии можно просидеть, с другой стороны- там и платят мало и вообще невесело.
Не хочу перекатываться во фронтенд, но как же меня заебло на заводе работать, где одни - ууу, мы корьеру строим и потому свои обязанности выполнять не будем, а будем деллегировать и так пока до кодера не дойдет 2 строчки из пожеланий, а потом: ну, мы свою часть работы выолнили, это кодеры обосрались, им премию не давать, нам - давать. Ну, плюс старые стеки и конкурировать приходится с одной стороны с теми кто на гос-финансировании(считай бесконечные деньги), с другой - мировыми лидерами, которые сами стандарт придумали, сами сделали решение и потом ваше по сертифицируют и ебут за каждый отход от их стандарта, хотя их стандарт конфликтует с российским. Короче, невечело работать на заводе. Но с другой стороны - ну блядь, ебаные сайтики делать и сидеть в одном оффисе с пориджами, которые даже не смогут по памяти пояснить чем ARM от x86 или RISC отличается. Зато плотют много как я погляжу. В общем, фронтендеры, развейте мои сомнения насчет того что вы все массово - имбецилы. Хотя бы малинку дома держите, чтобы автоматизировать нагрев чайника или поилку у кошки?
>>2171037 Очень наивно предполагать, что отсутствие у других людей глубоких знаний в какой-то интересующей лично тебя области делает этих самых людей глупее тебя.
>>2171037 >в одном оффисе Работай из дома/с завода >с пориджами Может ты и сам поридж >ебаные сайтики Только если в лендингостроительную пойдешь >ARM от x86 или RISC Так далеко от браузера что даже похуй >автоматизировать нагрев чайника или поилку у кошки? Пока сложно, чем то другим тебя можно удивить?
>>2171037 >Но с другой стороны - ну блядь, ебаные сайтики делать и сидеть в одном оффисе с пориджами, которые даже не смогут по памяти пояснить чем ARM от x86 или RISC отличается. Нахуя это знать фронтендеру? Спорим ты по памяти не скажешь чем отличается javascript и typescript.
>В общем, фронтендеры, развейте мои сомнения насчет того что вы все массово - имбецилы. Мне казалось плюсовики на заводах имбецилы, пишут тонны бойлерплейта где половина кода это работа с памятью и гоняют байтики по rs 232 между бесполезных коробочек где половина данных это контрольные суммы и всё это за тридцатку в месяц в ДС
>Хотя бы малинку дома держите, чтобы автоматизировать нагрев чайника или поилку у кошки? Хотя бы лендонс накидал, чтобы резюме разместить?
>>2171037 Пока что, судя по тому, что ты написал, складываются впечатление, что самый тупой имбецил-неандерталец-дегенерат в этом треде, это ты. И это никакая не ирония.
>>2171070 >Спорим ты по памяти не скажешь чем отличается javascript и typescript Ну, зависит от того насколько подробно. Если коротко - ts это попытка сделать шарпы в браузере. JS - зависит от того какой версии, последний раз когда я его активно трогал это был второй курс и в те времена jQuery - считалось круто и все тащили его. > пишут тонны бойлерплейта Ну да, такие вот тупые что за столько-то лет не напилили библиотечек. Угу. Напилили. Плюс, давно все на плюсах пишется. > и всё это за тридцатку в месяц Ну, не за тридцатку, за 100к + премия + категория + всякие надбавки, что-то около 150к в среднем, но все равно мало же. > Хотя бы лендонс накидал, чтобы резюме разместить? Накидал, на гитхабе пейджс положил. Правда я кидал на голом жс и развлекался с теневым домом. Не думаю что такое стоит показывать как примеры чего-то хорошего.
Допустим я хочу в консольке иметь аналог винформовских событий KeyDown/KeyPress/KeyUp. Думаю все и так понимают что оно делает. Вот как это сделать? Я пока что придумал только запускать в отдельном потоке бесконечное чтение из консольки и кидать на каждое нажатие - событие. Выглядит как какая-то хуета. При этом еще и символ в консоль может нарисоваться, а мне это не нужно. Как сделать иначе - я не придумал.
Подскажите вкатуну. Пилю для себя один проектик(учебный) сделал базу в атласе (монго), но там данные просто хранятся без какой либо структуры, яснен хер можно при запросе отсортировать, но мне надо их сгруппировать, те есть куча записей содержащие поле date в utc формате, мне данные нужно собрать за 7 дней, в одном дне может быть разное количество данных от 0 до бесконечности(утрировано), я с бэка должен обращаться в атлас и собирать из данных новый обьект и отправлять json на фронт? Или же как то в самой базе данных их структурировать?
Привет, кочаны. Хочу вкатится в тестирование, но не в курсе как это правильно делать. Допустим у меня приложение на React. Я должен каждый компонент тестировать через React Testing Library/Enzyme? А что насчёт сторонних функций или утилит? Их тестировать через Jest учиться? Что вообще сейчас востребовано в этом плане и где можно почитать как правильно организовывать структуру тестирования? Я немного наскрёб информацию. Можно же вообще всё что угодно тестировать, но на написание уходит существенная часть времени, тем более, я слышал, что полное покрытие тестами приложение это миф. Короче готов выслушать ваше мнение
>>2171687 Необходимый минимум присылать с фронта в запросе, на бэке выполнять поиск, сортировки и все прочие мутации, отправлять на фронт. Посмотри видосы/статьи по различиям между носкл и скл бд, мб понятнее станет.
Делаю учебный сайтик, решил поднять простенький сервачек с нодой, теперь 90% времени провожу ковыряя бэк что бы он отдавал нормальные данные, но я блять хочу заниматься фронтом, так и должно быть?
>>2171968 >Почему По качану! Почему одна хуйнянейм обязательно должна уничтожать другую хуйнянейм? Про симбиоз что-нибудь слышал? Мирное сосуществование и всё такое.
>>2171968 > приятно писать на svelte Фу бля, фу нахуй. Вот что в свелте плохо, так писать на нём. Как будто в нулевые телепортировался и в пхп монолите скрипты и стили пишешь. Только потом видишь что всё усыпано магией и вспоминаешь что двадцатые на дворе. Свелт занял свою нишу компактных бандлов и в ней он охуенен, с реактом он никак не тягается. Ровно как и реакт никак не подойдёт там где свелт рулит.
Запостите пожалуйста вебмку: переписка в телеге, там чел общается одними голосовухами и просит сделать сайт про продажу курсов саморазвития, спрашивает, во сколько это обойдется ему отвечают - 16к 5 дней он грит - ты че прикалываешься, накидай лейдинг на тильде за 3-4к, все так делают
Есть вообще смысл задрачивать задачки на Codewars? Я вчера на это часов 5 потратил, что-то решил, что-то нет. В итоге после 5 часов ощутил, что занимаюсь бесполезной хуйней, которая никак меня не развивает и в реальных проектах всё это никак не пригодится, а создано чисто для фана под пивко.
>>2172265 Хотя там задачи уровня идиот зачастую конечно, если хочешь стать крутым прогером а не макакой ifelseifelseifelseifelseifelseif то codeforces твой бро.
>>2172312 Можно ещё вызовы этих методов зачейнить, чтобы достичь пика дегродного типа декларативного стиля. И фильтр я бы в отдельную переменную запихал, он громоздкий слишком.
>>2172262 >занимаюсь бесполезной хуйней, которая никак меня не развивает и в реальных проектах Ну ты попили реальный проекты, потом вернись. Ты учишься писать отдельные кирпичики приложения, к тому же можешь потом подсматривать чужие решения. Аккаунт можно в резюме добавлять.(Если вкатываешься)
>>2172359 В том что как базарная торговка. (Вообще он инфоцыган, затирающий про свою роскошную жизнь) Ему озвучили прайс на план работ, а он начал агриться и требовать, вместо того чтобы пойти на хуй поискать соответствующего бюджету исполнителя.
>>2171037 >Не хочу перекатываться во фронтенд Или не можешь? >Зато плотют много как я погляжу. Это ембеддедам мало плотют. >ебаные сайтики делать и сидеть в одном оффисе с пориджами, которые даже не смогут по памяти пояснить чем ARM от x86 или RISC отличается. А зачем им знать архитектуры чипов?
>развейте мои сомнения насчет того что вы все массово - имбецилы. Тут тебе никто ничего не должен. Продолжай сосат манагерские хуйцы за копейки, раз тебе нраица!
>Хотя бы малинку дома держите, чтобы автоматизировать нагрев чайника или поилку у кошки? Нахуя? Чайники с готовым модулем управления продаются, а чтобы кастомизировать имеющийся его нужно вскрывать и городить свои элементы, которые не факт что впихнутся. Поилка у кошки тоже наверное продается, но решение будет места больше занимать. К тому же ты упускаешь социально взаимодействие человек-кот, где животное понимает свою зависимую роль, при автопоилке это станет неявным.
>>2172355 Я этого долбоёба уже после первого сообщения молча бы в чс добавил. Мне если предлагают работу без внятного первого сообщения, типа "Мы тут работаем на работе, увидели ваше резюме, хотите работать на работе у нас? Заинтересовались?". Сразу молча в чс блядь шизов, даже спрашивать не собираюсь что за компания. Будь они хоть из гугла.
Как бороться в выгоранием, или депрессией, я не знаю как это назвать. Работаю пот последние 3 месяца в новой компании, нужно тут еще доучиваться и каждый вечер после работы и на выходных сижу учу список вопросов, примерно половину вообще не понимаю для чего, в работе мы это в таком виде не используем. До этого еще как-то хватало сил и энтузиазма. Сейчас вообще не хочется вообще ничего, кроме как в петлю. Сегодня вот ни работал весь день, ни учился, просто как овощь сижу листаю видосики на ютубе, ни отдыхают толком, ни работаю, блядь хочется умереть просто, вообще не понимаю нахуй всё это нужно, вся эта работа, знания, зарплата, новые вещи, хочется просто умереть блядь как же всё заебало. Могу проспать 12 часов, и все равно весь день хочется спать, чувства отдыха нет, удовольствия от работы и ощущения от того, что сделал что-то полезное и хорошо потрудился тоже нет. Всё заебало пиздец просто.
>>2172475 В компании есть внутренняя система квалификации, если не проходишь - пиздуешь на мороз. Её вроде бы все проходят, только один человек за всё время не прошел, и я хз что там дальше с ним было. Но всё равно нужно сидеть готовиться. В итоге я вметсо того, чтобы отдыхать вечерами, ебусь с этим говном
>>2172472 У тебя орфографичесекие и пунктуационные ошибки в тексте, может это пока не твое? Подучил бы правописание.
>>2172478 >Её вроде бы все проходят >я вметсо того, чтобы отдыхать вечерами, ебусь с этим говном Если тебе нужно напрягатся для того чтобы пройти то, что все на изичах проходят...
>>2170602 (OP) Какие есть способы передавать контекст или провайдить данные вниз по древу в нативных custom elements? Сейчас пока ничего лучше не придумал чем просто подниматься вверх по дереву и собирать данные.
Мейби тупой вопрос - я нуб. Как используются приватные методы и свойства на практике? Суть я понимаю, спрятать внутренний интерфейс. Но как это выглядит в работе, не совсем понятно, хотелось бы какой-то пример из жизни.
>>2172363 >Это вью. Хуки там есть. Как функциональные и setup-компоненты. >>2172310 >>2172312 1. Чому у тебя в жс поля в объектах называются в снэйк кейсе, если общепринятое наименование в жс это камель кейс? 2. folder_name я так понимаю обычно строка? Тогда лучше использовать undefined или пустую строку для отсутствющего значения. Сейчас у тебя folder_name это либо string, либо объект, а браузер такое плохо переваривает. 3. file.file_size > 2000000. Тут нужно вынести это число в const и разделить нули для читаемости, что то-типа const MAX_FILE_SIZE = 2_000_000 4. arr нужно сделать через computed, иначе есть риск что будешь несколько раз подряд фильтровать данные (при вызове sortData() несколько раз подряд без изменения исходных данных), аналогично с сортированным arr. 5. file.file <- вот так делать не надо. Нужно назвать аргумент assetFile или как-то по другому, что бы было assetFile.file... 6. я бы сделал вместо трех условий в одном фильтре чейн из трех фильтров, но тут уже индивидуально под кодстайл проекта 7. метод добавляет в filteredData некоторые значения, при этом не очищая массив. Тут можешь нарваться на утечку памяти из-за этого. 8. из названия метода не понятно, что он делает. Нужно переименовать в что-то типа sortFilesByFileSize в чем проблема сделать все это это через computed? >>2172379 >Функционально с хуками. На вью почти никто не пишет функционально. С хуками да, но функциональные компоненты крайне редко используеются. >>2172363 Во вью есть компоненты с методом setup и функциональные компоненты. И те и другие вполне себе поддерживают слоты, пропсы, провайды и инжекты. Нахуя спрашивается стэйт менеджер?
>>2172509 >интерфейс Не говори о том, чего не знаешь. Интерфейс это совершенно другое. >Как используются приватные методы и свойства на практике Для того, что бы скрыть детали реализации от конечно пользователя твоего класса, т.е. грубо говоря уменьшить вероятность что-то сломать при доступе к приватному полю. Пример: у тебя есть обертка вокруг массива, допустим class ConcatenatedArray { constructor() {} push(...args) { const i = this.#arr.push(...args); this.concatenated = this.#arr.join(""); return i; } #arr = []; } При пуше в массив она пересчитывает поле concatenated. Если просто залезть в массив и вставить, поле может быть не пересчитано, поэтому мы скрываем поле от кривых ручек вебмакак. Как-то так, надеюсь понятно обхяснил. я знаю что можно пример выше реализовать через Proxy, можете не писать
>>2172509 Не ответил на главный вопрос > на практике? Та собственно, никак, лол. В основном, для реализации контейнеров/коллекций как в моем примере выше. Сейчас для сокрытия на хайпе хуки и асинхронные хуки, приватные поля это скорее бумерская тема.
>>2172510 >1. Чому у тебя в жс поля в объектах называются в снэйк кейсе, если общепринятое наименование в жс это камель кейс? Не знал, что общепринято камель кейз, думал кто как хочет, буду знать, объект не мой.
>2. folder_name я так понимаю обычно строка? Тогда лучше использовать undefined или пустую строку для отсутствющего значения. Сейчас у тебя folder_name это либо string, либо объект, а браузер такое плохо переваривает. Ок, понял. >а браузер такое плохо переваривает Не понял, но почитаю.
>3. file.file_size > 2000000. Тут нужно вынести это число в const и разделить нули для читаемости, что то-типа const MAX_FILE_SIZE = 2_000_000 Крайне странно слышать, честно, вообще не понял зачем обычную цифру в конст выводить да еще и с нижним подчеркиванием. Цифру потом следует потом приводить в строку, после реплейс, после опять в цифры? Что происходит.mp4
>4. arr нужно сделать через computed, иначе есть риск что будешь несколько раз подряд фильтровать данные (при вызове sortData() несколько раз подряд без изменения исходных данных), аналогично с сортированным arr. Встречал подобное, так и не допер как исправить, похоже через компудет.
>5. file.file <- вот так делать не надо. Нужно назвать аргумент assetFile или как-то по другому, что бы было assetFile.file... Да, выглядит коряво, поправлю на assetFile.
>6. я бы сделал вместо трех условий в одном фильтре чейн из трех фильтров, но тут уже индивидуально под кодстайл проекта const arr = [1,2,3,4,5,7] arr.filter(a => a > 2) .filter(a => a > 4) .filter(a => a > 6) Так что ли? Выглядит забавно, я уже поправил на цепь логику фильтрации, сортировки, как писали Аноны выше, но думаю удлинять ее уже не надо. Но если много условия, то думаю можно будет прибегнуть, в этом случае выглядит как-то более правильно, мне кажется.
>7. метод добавляет в filteredData некоторые значения, при этом не очищая массив. Тут можешь нарваться на утечку памяти из-за этого. Понял о чем ты.
>8. из названия метода не понятно, что он делает. Нужно переименовать в что-то типа sortFilesByFileSize Ок, принял. Буду стараться давать более длинный, описывающий нейминг.
>в чем проблема сделать все это это через computed? Чтобы все видели как я могу!
>>2172510 >На вью почти никто не пишет функционально. С хуками да, но функциональные компоненты крайне редко используеются. Я тебе открою страшный секрет, но "функциональные компоненты" в реакте - это то самое чистое ООП. Слово function не означает сразу же по умолчанию "функциональное программирование" и если ты, например, переписал компонент с класса на функцию, оставив все внутри таким же, то "функциональным" этот компонент не сделается.
Ребят, помогите плиз. Есть проблема с addEventlistener в хроме. Функция, передаваемая в прослушку, вызывается только напрямую через консоль разработчика, т.е. addEventlistener ее не триггерит и ошибок не выдает. При этом в мозилле все работает. Пробовал и коллекцию в массив преобразовывать, и с функционального перебора на цикл переписал - без толку, передаваемая ф-ия не вызывается. ЧЯДНТ?
Вьюшники на месте? Короче получаю с бэка timestamp. Дальше в сетапе делаю const startPeriod = ref(new Date(parseInt(props.entries[0].date)));
entries[0].date содержит дату в виде 1633062510000 Наример если хочу вытащить день недели то делаю так const weekdays = ref([ "вос.", "пон.", "вт.", "ср.", "чет.", "пят.", "суб.", ]);
let startCurrentWeekday = computed( () => weekdays.value[startPeriod.value.getDay()] );
Работает, но насколько это встрато? Думаю что не нужно делать дни недели реактивным
>>2172714 функциональный компонент во vue не имеет никакого отношения ни к классам, ни к ООП. >>2172724 Нужен полный код, не понятно что за коллекция options и из чего она состоит. >>2172735 >насколько это встрато? Достаточно встрато, даже в отрыве от вью. Смотри документацию toLocaleDateString. >const weekdays = ref( Зачем тебе навешивать реф на массив? >let startCurrentWeekday const потерял
>>2172739 Только что вот, да. В хроме не работает, в мозилле ок. >>2172738 >Нужен полный код, не понятно что за коллекция options и из чего она состоит. const options = document.querySelectorAll('.head_lists > option');
>>2172744 Почему бы через делегирование событий не навесить обработчик на родительский элемент и пользоваться evt.target/evt.currentTarget? И это, я не уверен, но переименуй лучше функцию event, есть уже такая глобальная переменная
>>2172779 >Не везде можно повесить обработчик событий на option. Везде можно. В хроме просто в селекте shadow dom, в котором нет optiona, соответственно ты кликнуть на него никак не можешь.
Начинаю изучать реакт. Сегодня с сайтика делал по их гайду крестики-нолики. И там код в примере был написан с помощью Class, а потом они говорят переписать один Class square на Function square(props).
Так вот, на боевых проектах пишут чаще с помощью Class или Function?
>>2172948 Алсо вью-шизик прав, но что бы реально полюбить вью нужно всетаки начать с реакта, как только освоишь его плюс редакс(реально поймешь что это и для чего) и напилишь штуки три проекта, то можешь смело щупать вью
>>2172960 >>2172948 Сейчас все пишут на хуках. Очень редко можно что-то написать на классах, если нужно как-то по особенному изъебнуться с компонентами жизненного цикла. Но опять же, не встречался с этим на практике. Правда работу с классами всё равно лучше знать, не обязательно всё уметь делать по памяти, но чтобы ты не обсирался, когда где-то увидишь примеры кода с классами. Плюс на некоторых собесах могут начать адово возить еблом по столу, расспрашивая про паттерны, классы и вот это всё, при том, что на самой работе ты этим пользоваться не будешь н-и-к-о-г-д-а. Ну вот просто надо потому что надо, шоб знал.
>>2172987 >с компонентами жизненного цикла с методами Ну и да, классы можно навернуть изначально, чтобы вот эти жизненные циклы лучше понимались. Но это все равно не обязательно. Но на работе и уж тем более на собесах будет очень стыдно не уметь работать с классами. Это единственное от чего у меня горит жопа и по сей день
>>2172987 >Плюс на некоторых собесах могут начать адово возить еблом по столу, расспрашивая про паттерны, классы и вот это всё Доки будет достаточно для того, чтобы к собесам готовиться?
Алсо как часто на React-собесах спрашивают CSS и JS?
>>2172998 Я более-менее знаю JS и могу на нем писать. То, что нужно для React, я изучил. Деструктуризация, работа с массивами и т.д. Но есть же продвинутое знание JS - то, ради чего смотрят JS Hard Parts и читают YDKJS. Насколько все эти сложные части JS важно знать для собесов?
Алсо тоже CSS разный бывает. Flexbox/grid, SASS/LESS/SCSS, БЭМ, CSS in JS.
>>2173000 >Flexbox/grid Бляяяяя все что ты описал это как буквы в азбуке для первокласника, препроцессоры всякие бутстрапы тайлвинды стайлед компоненты тайпскрипты да даже ебучий бэм, ты без этого тупо не сможешь
Я, конечно, охуел с распространенности жквери, думал эта ебота умирает и сейчас ее только маргиналы на вордпрессе используют, но нет. Видимо, придется учить это говно.
>>2170602 (OP) Есть хук, который принимает параметром url и делает запрос к api, после чего сохраняет данные в свое состояние и возвращает это состояние. Я использую этот хук в своем app компоненте и передаю полученные из хука данные в пропсы дочернего компонента, который уже отображает эти данные. Естественно запрос к api занимает какое то время, поэтому дочерний компонент получает хуй на блюде, а не нормальные данные, что вызывает ошибку. Как сначала дождаться данных из хука, а только потом передавать их в пропсах дочернему компоненту, чтобы ошибки не возникало?
>>2173000 Всё очень сильно зависит от конкретной компании. У меня были собесы, где сходу спрашивали про паттерны и опп. А были собесы, где молча смотрели мой код, спросили как дела, как погода, ну ладно, и давали офер, не задав ни одного технического вопроса. Иногда с собесов и вопросов на них горит жопа. Я могу написать нормальный код здорового человека с хорошей архитектурой, а потом тебе могут начать ебать мозги какой-то рандомной сранью, которую сам интервьюер прочитал за 15 минут до начала собеса. Могут просто рандомно спросить про какой-нибудь бэм, которого я рот ебал и не собираюсь этим говном пользоваться вот просто так на ровном месте, никто и никогда его при этом в компании может не использовать.
>>2173048 Еще были вопросы на фронте про докеры блядь, про ci/cd, какие-то хитровыебанные типизации на ts. Могут попросить перечислить коды ответов сервера. Самый лютый пиздец это когда начинают хардкорно по html гонять, типа а чем отличается html5 от 4. А что там добавили нового. А doctype какие бывают, и чем отличаются. Хочется от таких вопросов разбежаться и влететь с двух ног в ебальник
fetchNews это тупо асинхронная функция которая получает данные для запроса, делает запрос, в самом компоненте пока идет загрузка рендерится лоадер, как данные получены, лоадинг=false и рендер списка
>>2173048 А что если я тебе скажу, что ты волен сам выбирать коллектив, где собираешься работать? Смело заканчивай собеседование, если там собрались ебаные мозгоебы.
Все офферы из адекватных компаний были такого плана: За жизнь; За код (основные конструкции); Разбор живого кода (ченетак, чтоклучшилбы, хуемое); Таймаут на подумать; Оффер.
>>2173075 Я ж на двачах более 4 лет сижу. Я ебанутый нахер. Как и большинство здесь, але но это не отменяет того факта, что ты прям не можешь дождаться, чтобы нырнуть в чан с дерьмом, адекватный поц в 2021 даже прикасаться к жкьюри и пхп не будет и обойдет любую компанию, юзающую эти "технологии" за километр
>>2173025 Схуяли ей умирать? жквара до сих пор в огромном количестве зависимостей стоит, к тому же аналогов в ваниле обеспечвивающий настолько удобный способ работы с DOM не запилили за все время существования жс. >Видимо, придется учить это говно Че там учить? Из всех жквары используеются методов 10, они простейшие. Ну, еще надо знать, что в методах для итерации по массиву там первым аргументом передается индекс, а потом уже само значение по этому индексу.
>>2173061 >!canceled && fetchNews(pageNumber); пиздец, вот if-ом сложно было написать? Один хуй терсер потом это преобразует в аналогичный код наверху. Нахуя вообще так усложнять код? В чем проблема сразу передать state, а потом когда fetch завершится просто его изменить? Нахуя тут эффекты?
>>2173057 У меня в компании есть отдел, где вот такой синьер (!!!!!) 60 летний сидит и хуярит код в 2021 инициализируя переменные через var и используя ActiveXObject, потом недоумеваяя, почему же код не работает нигде кроме ie.
>>2173099 >усложнять Ебать че тут сложного? >Нахуя Захуя. Нахуй изобретать велосипед если есть распрастраненый кейс, он мне понятен, тебе нет? Значит иди нахуй
>>2173102 >и хуярит код в 2021 инициализируя переменные через var Нет, ну доеб до вара безоснователен. Если нужен максимально производительный быстрый код, обязательно вар.
>>2173127 Зато сможет заявить, что вротендж специалист с коммерческом опыто и похуй, что в говне копался.
Кчт, недавно в тильду вроде приглашали, отсеяли из-за отсутствия жиквери, у них типо модули на нем написаны, но в первом интервью всячески обещали, намекали, что работа по переписыванию на норм стек будет.
Пацаны, у вас сколько времени ушло на вкат? Как много задачек нарешали?? Я щас страглю нереально, инфы слишком много и сложно понять нахуя все это надо без наглядных примеров. Думаю метод читать кантора - неэффективный, потому что надо сначала понять что ты хочешь научиться делать и потом уже собирать инфу. Ну и чувствую себя дауном пушто за месяц практически не продвинулся, постоянно возвращаюсь, мозги кипят. Не поверю что вы сразу без задней мысли решали и все задачи, и всю теорию удерживали в памяти, а не перечитывали учебник раз 5. Походу не вкачусь. Но я не сдамся.
>>2173126 >Нет, ну доеб до вара безоснователен. Если нужен максимально производительный быстрый код, обязательно вар. Есть где почитать про разницу в проивзоидтельности вара и лета? Вроде я раньше смотрел, там доля прцоентов разница между способом инициализации переменной. Так вот, там у них нет ни вебпака, ни линтера, даже гита нет, они комментами ставят дату и фамилию в коде кто поменял. Код у них хранится в сетевой папке. При этом этот чел постоянно вставляет свой код в аттрибуты html вские, там у элемента <body> в аттрибуте onclick у него пара сотен килобайт кода.
>>2173157 >Пацаны, у вас сколько времени ушло на вкат? 2 года, но можно было быстрее, я слишком поздно по собесам начал ходить >Как много задачек нарешали?? Ну не особо много, но я решал максимально приближенные к реальной разработке >Я щас страглю нереально, инфы слишком много и сложно понять нахуя все это надо без наглядных примеров. А ты не зубри, просто реализуй всякие говнофичи, без предварительной подготовки >за месяц практически не продвинулся, постоянно возвращаюсь Ваще похуй. Я иногда выгораю на работе, беру отпуск и играю 2 недели в доту и смотрю аниме безвылазно. Потом с новыми силами залетаю, как будто никогда не выгорал. >Не поверю что вы сразу без задней мысли решали 99% задач это обычная рутина, которая не требует какой-либо мозговой активности. Поэтому да, решали, решаем и будем решать. >всю теорию удерживали в памяти Опять же, 99% задач решается простейшими методами. >перечитывали учебник раз 5 Нахуя ты в 2021 читаешь учебник? Гуглить не пробовал свою проблему?
>>2173157 Ты просто когда того же кантора читаешь, сразу пробуй реализовать это в коде, как будто это реальная задача. Я тоже сначала просто пытался впитывать, что читаю, но бесился, что я что-то узнал, а как с этим работать не в курсе. Вот я и создавал простейшие формы, инпуты, странички сайта и экспериментировал. Но я еще не вкатился, если что, не хватает практических навыков с препроцессорами, классическая верстка не отскакивает, ну и реакт еще не знаю совсем, без этого совсем плохо все, уже даже не обновляю резюме, пока не подтяну это все.
>>2173159 >я слишком поздно по собесам начал ходить Страшно, что если слишком рано начну ходить на собесы, то упущу много годных вариантов из-за слабых знаний...
>>2173159 >Нахуя ты в 2021 читаешь учебник? Гуглить не пробовал свою проблему? Все форсят и боготворят этот учебник, вот и пошел по нему, а что с ним не так? С чего надо было начинать? Не то что бы существтует какая-то нереальная проблема, просто если за 2 мин не приходит в голову решение задачи, то сразу подсматриваю готовое и по итогу получается что материал не был толково проработан, вероятно не закрепится особо. С другой стороны если действительно 90% задач решаются простейшими методами и чуть ли не копипастами, тогда наверн продолжу учить теорию...
>>2173174 >что с ним не так? Тут проблема не в учебнике, а в тебе. У тебя задача решить проблему, а не ршить проблему посмотрев в учебник. >сли за 2 мин не приходит в голову решение задачи, то сразу подсматриваю готовое и по итогу получается что материал не был толково проработан Так и работает разработка. Почти всегда берется что-то готовое от васяна1999 с гитхаба вместо того, что бы писать свое. >>2173173 > упущу много годных вариантов из-за слабых знаний никто тебе не запрещает спустя некоторое время опять в эту же контору податься.
Зачем нужен typescript? В случае ошибки в рантайме приложение всё равно наебнётся, когда данные от сервера в модуль прилетят невалидные. Я бы лучше хотел такую надстройку над js, которая бы в случае сбоя в функции/модуле не ломала всё приложение и высылала еррор лог куда нужно, но остальные части бы работали стабильно. Пока оборачиваю все модули в try catch, но это ебланство немножк (хотя другого способа и быть не может, просто хотелось бы красивее это делать)
>>2173176 Ну чтобы решить проблему оч много теории знать надо, вот я этим и занимаюсь пока, учу синтаксис... Типа ты если одну тему плохо понимаешь, то оно потом сноуболит и дальше уже нереально, почти все некст уроки строятся на изученном, и вот эту базу довольно сложно удержать...
>>2173181 Алсо, тесто-петушки начнут кукарекать, что надо пок-пок-пок покрывать код тестами, но в реальных проектах такая роскошь бывает только там, где заказчик бабок не считает или где ошибка может стоить в разы больше, чем трудозатраты на тесты.
>>2173182 >>ОС >Как расшифровывается? Обратная связь >Через пару недель будет норм, получается? Хз, я за всю жизнь прошел только 3 собеса, после которых мне сразу 3 офера дали соответсвенно. >негласный бан для неудачно прошедших собесы Ну если ты бухой на собес пришел, или показал себя очень плохо каким-либо способом иначе то будь уверен, попадешь в скрытый пул HR'юш. >>2173183 >Ну чтобы решить проблему оч много теории знать надо Для какой проблемы надо знать очень много теории?
>>2173186 >Для какой проблемы надо знать очень много теории? Не знаю, нуб полный, но думаю есть много подводных у каждого решения, ну и ваще я пока никаких задач и не решал толком, мб все не так сложно, как себе представляю..
>>2173186 Ну и ваще сложным кажется тот факт что у всех объектов могут быть в свойствах функции, в самих функциях аргументом может быть функция, всякие колбеки, вложенности, рекурсии, области видимости, и думаю я еще не дошел просто до момента когда все это вместе начнет применяться, но даже в простых моментах уже можно мозги сломать, ну и синтаксис сам тоже местами пугающий.
>>2173192 Только для плохого собеседования. Никто не будет тебе на нормальном собесе спрашивать чем отличается HTML4 от HTML5, как изнутри функции вызвать эту же функцию без использования именованных функций и т.д. Просто прогонят по основам и дают оффер
>>2173193 >то у всех объектов могут быть в свойствах функции, в самих функциях аргументом может быть функция В жс 8 типов, их ты должен зазубрить. Забить можешь разве что на symbol и bigint, они не так часто используются. >всякие колбеки В чем сложность? >рекурсии Функция взывающая сама себя. В чем сложность? >области видимости изнутри круглых скобочек видно все, что есть снаружи этих круглых скобочек, в чем сложность? >синтаксис сам тоже местами пугающий Синтаксис очень простой. Ты посмотри как выглядит синтаксис в крестах, где указатель на указатель на указатель может ссылаться
>>2173198 Ну типы данных ето база, их я выучил уже вроде. Не знаю в чем конкретно сложность колбеков, я тока сегодня про них услышал, я не грю что это невозможно, но бля функции, которые принимают функцию как аргумент, потом еще внутри какая-то анонимная функция, а внутри тела еще и синтаксис связанный с домом, то я начинаю жеско плавиться и перестаю понимать о чем мне пытается рассказать тот или иной туториал... ну или слишком много инфы для моего лоу айкьюшного мозга пока что хзззз. Ну а что по твоему сложно в жсе тогда?
>>2173207 Нет, это только в жс и прочих мейнстрим языках. Вон пердиксы дрочат свои МК на сях и асм, на которых нихуя не менялось то особо последние 20 лет.
>>2173210 >прототипы В основном используют классы. В старых браузерах использовали прототипы. >гетеры и сетеры В основном используют Proxy, геттеры и сеттеры используют в браузерах, которые не поддерживают прокси.
Ананоы, как называется метод аутентификации api, когда на клиенте генерируется ссылка с параметрами ключа api и редиректом, пользователь переходит по этой ссылке, где просится разрешения доступа к нужному сервису и его редиректит уже на страницу полученным токеном
Хотелось бы полноценный тутор, как такие вещи правильно обрабатывать, особенно для svelte
Аноны, а вообще код на js как-то поддаётся оптимизации по ресурсам? Я везде вижу кучу жалоб на современный веб, мол, все очень медленно, говнокод, макаки подключают 500 либ, от которых все тормозит, 9000 фреймворков, написанных поганым языком, и все в таком духе. Таковы требования в современном вебе, или можно писать что-то хорошее на ванильном жс? Я понимаю, если на беке надо импортировать либу для коннектора к БД, но на фронте все эти либы кажутся излишествами. Навеяно пикрилом.
Что значит писать "функционально", "классами", и в особенности на "хуках" в контексте разработки на вью? Сотню постов назад было обсуждение, и вы говорили что функционально и классами сейчас писать моветон. А что значит писать на хуках? Я уже год знаком с вью2, и писал всегда со стейт менеджером, используя в компонентах data, computed, methods и прочую шляпондропалу, из хуков жизненного цикла мне за все время понадобился только mounted. Недавно читал доку по вью3, потрогал Composition api, сетап компоненты, особо не понял в чем прикол, но видимо все будут писать только этим. Можете пожалуйста тупорезу обьяснить, что значит писать на хуках, в чем преимущества и как сейчас писать не "моветон".
Продолжаю в 8 утра ебаться с typeorm. На этот раз предельно простой вопрос. У меня есть пользователи и у меня есть группы. Между ними many to many отношения (JoinTable на стороне группы). Если я захочу добавить пользователя в группу и сделаю вот так: 1. newGroup = поиск группы по id (1й запрос в базу). 2. user = поиск текщего залогинненого юзера по id(2й запрос в базу) 3. user.groups = [...groups, newGroup] 4. апдтейт пользователя в базе (3й запрос) Это норм будет? Ничего что на такое простое действие аж 3 запроса в базу? Может можно это как-то получше сделать? Я не ебу как, в мануалах к typeorm ничего не объясняется, там лежит вот это: пик. Абсолютно бесполезный пример, в котором в одном скрипте создаются переменные и запихиваются в many-to-many отношение, что даже примерно не дает никакого представления о том, что делать если тебе надо сохранить 1000 категорий за раз и при этом инфу о 999ти из них нужно перед этим взять из БД.
>>2173260 > 1000 категорий за раз и при этом инфу о 999ти из них нужно перед этим взять из БД. Ну ок, не за раз блядь. Это я просто погорячился. Ну вот представьте, что есть такая типичная соцсеть. И пользователь идет по странице с группами и тыкает на каждую "подписаться". И вот на подписке у него выполняется вот это: >1. newGroup = поиск группы по id (1й запрос в базу). >2. user = поиск текщего залогинненого юзера по id(2й запрос в базу) >3. user.groups = [...groups, newGroup] >4. апдтейт пользователя в базе (3й запрос) Это норм? У меня мало опыта и мне кажется что это пиздец какой-то и так не должно быть, что если по 3000 раз обращаться к серверу на каждый пук, то ему очень скоро придет пиздец.
>>2173267 Все вышеперечисленное делается за один insert-запрос, при условии что many-to-many связь организована через связующую таблицу (как и должна быть) и настроены правила foreign key.
>>2173259 >Что значит писать "функционально", "классами", и в особенности на "хуках" в контексте разработки на вью? Очевидно бредятина, даже в оф доке вью все в функциях, класса нахуй не нужны
>>2173268 >при условии что many-to-many связь организована через связующую таблицу (как и должна быть) и настроены правила foreign key. Насколько я понимаю это все автоматически делается под капотом, когда ты указываешь many-to-many отношение и JoinTable декоратор. У меня уже есть эта самая таблица c двумя foreign ключами. То есть мне остается только через queryBuilder написать этот инсерт запрос? Ну это все равно получается 2 запроса в базу. 2й это инсерт. А что инсертить-то если нихуя нету? Поле groups просит сущность целиком, а не только id. Насколько я понимаю со связующей таблицей я никак не могу взаимодействовать напрямую (я бы пропихнул туда вручную id, да и пошло оно нахуй). В любом случае, придется вытаскивать из базы сущность по id (не буду же я на фронте хранить весь объект в каждой кнопке) и инсертить ее. В итоге 2 запроса. Или я что-то не понимаю?
Сап, ребятки. Кто шарит за REST api, помогите. Есть параметр api запроса, ему можно выставить фильтр income, равен он массиву строк = ["$100K - $124K"] На самом api такой запрос выглядит пик 1 Но у меня когда я прописываю param запросу income: ["$100K - $124K"], он выглядит пик 2. В чем я не прав ? Как добиться того же поведения?
>>2173304 нечасто. учи все основы React, React-router, Redux, GraphQL. В конечном счете, если потребуется Next, ты быстро в него вкатишься за несколько дней
>>2173296 Просто так прописывать в query парметры массивы ты не можешь, спецификацией они не поддерживаются. Значит у тебя уже есть какая-то библиотека для этого, и формат, в который она переводит массивы, отличается от формата, принимаемого сервером. Сервер принимает вообще хуй знает что, но точно не массив строк в любом из распространенных форматов(там просто написано income=$100K - $124K, возможно income=123&income=321 сервер и будет парсить как массив, но не факт), а ты передаешь income[]=$100K - $124K, да еще и с кодировкой пробелов в плюсы, что нихуя не стандарт, но исторически использовалось.
В ванильном жсе, тобы получить строку, как на первом пике, тебе нужно использовать encodeURIComponent("$100K - $124K"), но опять же, так как у тебя уже есть какая-то библиотека для query параметров, то ебаться нужно именно с ней.
>>2173331 в том-то и дело, что я не знаю за библиотеки и вообще первый раз делаю запросы, в которых много params. библиотека ты имеешь ввиду со стороны бэка? и мб ты меня не понял или я тебя не понял, я говорю о параметрах не в URL, а в запросе, посмотри пик 1, это асинхронный запрос, в который я это все прописываю, а не в URL.
>>2173109 >три месяца никого найти не могут У нас в компании за 3 месяца человек 20 набрали. И не сказать, что компания большая. Может у них офферы такие просто?
>>2173454 Ну в ангуляре то понятно мимо форм не пройдёшь. Тут дело даже не в валидаторах из коробки, а где стейт формы хранить и когда валидацию делать, потому что в наивных реализациях пук и форма умерла.
Допустим я написал компонент Vue. Как нужно его код забандлить, чтобы в другом проекте, я указывал ссылку на скрипт и вставлял в html сам компонент? Вот пример:
<script type="text/javascript" url="{URL to the app}"></script> <some-cool-widget />
Пытался сделать по-своему, но получаю ошибку: "Failed to mount component: template or render function not defined."
>>2173726 react-hook-form + yup (опционально). Нахуя тратить время на написание своего говнокода, если либа предоставляет всевозможные инструменты для всевозможных кейсов?
что formik, что hook-form оба ахуенные. react-final-form покаловей чутка
>>2173730 >react-final-form Проиграл. А какая рилли финальная форма у реакта? Он должен собраться воедино со всеми либамис НПМа и прочих менеджеров для этого?
Принимает массив объектов и обхект, затем возвращает отфильтрованный массив объектов таким образом, что значение по ключу во втором объекте совпадает со значением по ключу в элементе массива
>>2173835 >связаны в рамках модуля, но не функции же В рамках объекта. > на мерзком jsx, вместо лампового html У vue единственный плюс это то, что есть интеграция со стилями, можно даже биндинги делать. На этом преимущества относительно jsx у vue заканчиваются.
Сап, а что делает клаудфлэр во время checking your browser? Посидел час за дебаггером, пытаясь разобраться в обфусцированном коде - нихуя не понял. В гугле тоже ничего не нашел.
Гуру жаваскрипта, поделитесь, пожалуйста, мудростью, как увидеть email, спрятанный за кнопкой "Контактная информация" на hh? Раньше можно было даже не авторизованным посмотреть, а теперь нет. Можно как-то через консоль браузера получить эту информацию? Спасибо. Инб4 зарегистрируйся на hh
>>2173840 А ещё можно сраку не мыть и не вытирать. Тоже перестанешь замечать со временем. А главное нет этого бойлерплейта с бумагой ванной душем. Посрал и сразу в продакшен.
>>2174007 >бойлерплейта Сейчас бы парится о том что пара сотен строк будет висеть мертвым грузом, ебачки еще застряли в 2005 во времена wap.sasisa.ru, найс
Почему при добавлении фотографии последний дублируется, и через некоторое время меняется? Не понимаю почему так происходит, в чем суть бага. Попробуйте добавить 4к фотографии и вы поймете.
>>2174009 >пара сотен строк будет висеть мертвым грузом в случае с реактом, графкюэлем и прочими новомодными штуками проблема как раз в том, что это всё не будет висеть мёртвым грузом, а требовать дополнительного трахания при каждом обновлении компонентов/структур базы
>>2174025 Ну попробуй какие-нибудь 4к фотографии подобавлять, ты увидишь как добавленный будет скопирован с последнего, и через время измениться на настоящий
>>2173983 Ну у меня тащемта стори нет с ним больше. Я однажды с ним общался по поводу того, какого хуя у них api soap ебаный ненавижу сука отдает невалидный xml. Так вот, этот старый пердун мне начал заливать насколько охуенно было кодить во времена IE5 и насколько охуенные режимы совместимости с предыдущими версиями IE в новых версиях. Пол часа про это пиздел, в итоге ответа на свой вопрос я не получил и просто закостылил решение проблемы своими силами, вот.
>>2174057 >>2174056 Уу, сука, людей с толку сбил, фофотня, ты key проебал, без него говно получается, в приказном порядка напровляю вас в документацию, пишикод.
>>2174106 Угарно что я сейчас работаю на бэке 50/50 - питон и нода (шел на питон но постепенно перешел к ноде) и я в общем-то никогда не проходил собеса на вот такую вот хуйню лол
Сам спроси, сам ответь. Number.isNaN() - судя по всему более новый, даже в ишаках нету. Спецификация за 2015 год, наверное тогда его и "обсуждали".
isNaN() - с ИЕ3, древняя хуита, ей простительно.
Так вот, какими уебками надо быть, что бы в 2015 года, когда ЖС уже расматривался как серьезный язык, так обосраться? Ну нульзя ее как-то иначе назвать хотя бы? Комитеты-хуететы, сидят деды "вершители судеб" и так себе в штаны обсираются, а всем доедать. Да даже название типа Number.isNaN[Value|Literal] лучше
>>2174127 Похую. Тут ошибка дизайна языка, где ф-ции с одинаковым названием имеют разное значение. Надо было уже яйца иметь и просто isNaN() переименовать или придумать что-то другое для Number.isNaN()
>>2174145 Добро пожаловать в жопаскрипт Из-за необходимости совместимости со старым говном которое работает в старых браузерах они вынуждены оставлять эти косяки (по этой же причине typeoff null выдает object, это не фича нихуя но так просто изменять это они боятся). Так бы давно запилили заебатый ЯП но ориентированность на веб-фронт дает о себе знать, это одновременно и сила и слабость жса
Сап двощь, у меня вопрос про АРХИТЕКТУРУ, досталось древнее приложение без фреймворков, очень много скриптов в стиле if govno, всё написано в глобал скопе и когда падает, то падает вообще всё. Думаю разбить всё на функции, запилить в массив, и гонять через трайкеч. Какие подводные, или как это лучше сделать?
>>2174098 Да, вполне. Но правильный ответ тут: Эти хуйни работают по-разному, я ебал в рот запоминать как. Ну, в идеале бы вспомнить что Number.isNaN проверяет только на строгую тождественность NaN, а isNaN проверяет хуй пойми что. Т.е. всерьёз такие вопросы задают только чтоб дискуссию и софт скиллы потестить, а требовать именно знания будет только тимлид-травитель. В принципе я синьор-помидор знаю ответ сходу, но на сеньёрских собеседованиях такое и не спрашивают.
>>2174370 Переноси куски кода в модули. Наращивай ко-ко-композицей. Есть интересный подход в дизайне - типа атомик. В коде можно заюзать то же самое - отдельно положи примитивы, а рядом юзкейсы - скомпоженные куски кода в одном неймспейсе.
>>2174370 >Думаю разбить всё на функции, запилить в массив, и гонять через трайкеч
Я бы не стал так брутофорсить. Начал бы с того, что ты изолировал участки кода с явным throw. Потом перешел бы к более гранулированным кусочкам кода - обернув их в самостоятельные функции, описал бы блэкбокс-тесты (чисто проверка на то, что при разных входных параметрах твои функции не выбрасывают исключений). Потом бы итерациями перешел на управление зависимостями DI, Reader Monad, ватева, и уже описал acceptance тесты. Так ты заодно бы стабилизировал поведение системы.
>>2174500 Всё нормально со Vue. Я бы тебе советовал учить React и Vue, т.к. большинство адекватных вакансий именно на них. Ангуляр мне встречался полтора раза для поддержки легаси кала.
>>2174531 Начни с чего-то одного. Советую с React.
Есть документация https://reactjs.org/ Есть миллионы видео на ютюбе, смотри и поглощай всяких webDev, Владилен Минин, Ulbi и т.д.
Когда будешь уверенно стоять на React-ногах - переходи учить typescript или что-то другое. Мы живём в потрясающее время, когда информации можно много получить, достаточно ввести запрос.
Находи любой макет. Обязательно посмотри, чтобы у него были адаптивы для мобилки/планшета. Верстай его, делай адаптивно и прикрути sass (scss). Изучай его. Я не в курсе какие у тебя сейчас познания в javascript, может пока ещё рано остальное трогать. Постарайся по одной технологии поглощать за раз.
>>2174543 С JS/TS/Реактом у меня все нормально. Их я основательно задротил. Я просто верстку в самом начале пролетел очень быстро, потому что дико скучная дрисня. Если она прям так нужна на работе, тогда конечно придется и ее учить.
>>2174543 Когда такое ИРЛ бывает, чтобы у макета еще и адаптивы под мобилки были? Верстальщик должен сам докумекать дизайн! Ибо не барское это дело, дизайнеру доделывать мелочи!
>>2174551 >Если она прям так нужна на работе, тогда конечно придется и ее учить Ну это мастхев для фронта, пчол.
>>2174553 Ой тоже пиздец бесит эта херня. У меня же вместо мозга квантовый компьютер в голове, поэтому сам должен отступы и размеры рассчитать и чтобы не всрато всё выглядело
>>2174559 1) По жс: 1.1) Кантор, 1.2) YDKJS 1.3) Freecodecamp и задачи оттуда. 1.4) Зайди на сайт Underscore и напиши свою реализацию функций. Напишешь все, придрочишься с закрытыми глазами крутить объекты с массивами. 1.5) На 30 seconds of code есть готовые сниппеты для JS. Попробуй реализовать свои. 2) По реакту: 2.1) Документация 2.2) Complete React Developer in 2021. Неплохой курс, есть на торрентах. В одном курсе React, Redux с санками и сагами, styled components, GraphQL, Gatsby, Firebase и еще куча всякого. 2.3) Так же 30 seconds of code. Попробуй сам сделать свои компоненты и хуки.
Ну и сделай какую-нибудь пет-ебалу, чтоб там было по больше всего. Если не знаешь что делать, сделай что-то вроде песочницы с роутингом, что бы по ссылкам были какие-то простые вещи для тренировки.
>>2174502 Там довольно сложная документация рассчитаная на то, что в Ангуляр заходит человек, который умеет в современное программирование в целом. А это умение, скажем так, не привязанное к фреймворкам и языкам.
Ангуляр был сделан людьми, которые реально видали некоторое говно, и четко понимают чем на долгой дистанции может грозить свобода слова и самовыражения. Поэтому то пориджи его так и хейтят. "Ангуляр вери опиниэйтед" говорят они, как будто это что-то плохое. Да, с одной стороны это правда. С другой стороны когда я пишу приладу на Ангуляре я оставляю наследние в котором люди смогут легко разобраться без меня, смогут его расширять и углублять.
Ангуляр реально снижает косты компании на долгой дистанции.
Рекат топ выбор хипстеров-смузихлебов которым надо резко ворваться со своим говном брилиантовым проектом на рынок. Это хороший выбор для скажем так недолгоиграющих прилад, которые нужны для проверки гипотиз, или для того чтоб быстро овтетить на вызовы рынка.
Ангуляр выбор для солидного энтерпрайза который живет дольше 2х лет.
Т.е >>2174516 > Ангуляр мне встречался полтора раза для поддержки легаси кала. > для поддержки легаси кала Значит ты просто плох, братишка. Извини, конечно, за прямоту. Я тут две недели как на рынке со своим Ангуляром, у меня уже 3 оффера от топ _вендоров_ айти рынка (не галеры, и не аутсорс)
Но в принципе, как водится, я не протви чтоб такие как ты вкатуны только увеличивались в количестве. Я-то в ваш убогий реакт зайду с ноги вообще в любой момент. А вот ты и твои братишки-макаки мне точно не конкуренты>>2174533 >>2174533 >Верстать ты должен уметь в первую очередь Вообще чушь. Хорошо верстать это плюс к твоей цене, но точно не в первую очередь. Для старта базы тебе хватит. >>2174601 >Еще наверно Айтикамасутру можно посоветовать Пиздобольный канал для пориджей с охватом текста в 3 твитерных сообщения. Не стоит времени вообще. >>2174500
>>2174500 >А какой положняк по вью? Не могу ответить. Я понимаю зачем нужен Ангуляр как инструмент. Зачем нужен Rectact как инструмент. Зачем нужен Вью я просто не понимаю. Аргумент что "код на проде на 40% легче", кмк, не убедителн.
>>2174614 >Ангуляр выбор для солидного энтерпрайза который живет дольше 2х лет.
Ну и чтоб не быть беспркфным вскукареком, вот пример крутой хуйни на ангуляре. Чуваки внутри браузера в фулл 3д летают по цеху завода, с детализацией его компонентов до гайки на трубе.
Неплохо было бы посмотреть на что-то сопоставимое по размаху на реакте...
И не надо мне пиздеть за фейспук. Который помойное багованное тормозное и тяжеловесное говно, живущее только потому, что в свое время был пионером движухи.
>>2174620 >уваки внутри браузера в фулл 3д летают по цеху завода, с детализацией его компонентов до гайки на трубе. А ангуляр тут причем? Они же не рендерят 3д на нем.
>>2174626 Ну да, синьоров. Но это ответ петуху сверху про "легаси говно". >>2174626 >куда подаваться джуну с ангуляром? Галеры, или искать удачи.
Я в свое время делал так. Приходил на собес и говорил "Я понимаю, что я скорее джун, но обещаю что за полгода у вас будет солидный мидл, готов работать ниже рынка"
Ну или галеры, что уж тут. Помню ЕПАМ мне предложили ажно 80 рубоей за джуна на ангуляре. ахаха.
>>2174633 >То есть ангуляр был хорош для вката 5-10 лет назад, а сейчас он не тот и никто не ищет новых кадров? Какого именно вката? Вката войти или вката во фронтенд с опытом пограмирования вообще?
Вообще знаю челка который вкатился в ангуляр, а потом перекотился с него на реакт. А был эникеем. Но он прям хуячил года полтора как не в себя.
>>2174642 Я хз как ты собрался вкатываться когда не способен в элементарный ресерч. Реально подумай о карьере повора или стоялара. Вот тебе картинка сверху, на которую я потратил ажно 45 секунд своего времени
>>2174614 Много красивых и пафосных слов. А по факту на реакт вакансий больше, учебных материалов больше, комьюнити больше. Многие компании переходят на реакт, энтерпрайз переходит на реакт, скоро и гугл начнет переползать. Кому ангуляр будет нужен через пару тройку лет? Он и сейчас существует только потому, что нюгугл обосрется, но будет свое говно педалить.
>>2174477 Я несколько раз на интервью сталкивался с тем, что компания писала на ангуляре, но сейчас перекатывается на рякт. Возможно это связано с тем, что на реакт людей искать труднее, и поэтому компании новые проекты пишут на реакте. Если вкатываешься, то опять же лучше начни с реакта, потому что вакансий больше.
>>2174652 > А по факту на реакт вакансий больше, учебных материалов больше,
А теперь попробуй в следующий шаг, и сравни количество вакансий с викли даунлодами. на 200 тыщ я вижу по москве всего в два раза больше на реакт, чем на ангуляр. Притом что скачиваний 2.5 ляма против 11. Какбе намекает. >. Кому ангуляр будет нужен через пару тройку лет? Увидим через пару тройку лет. Я еще раз повторю, мне реально посрать что там сейчас в тренде. Всегда надо взять паузу на пару лет и посмотреть чо к чему идет. Зайти в реакт челу с мозгами вообще не проблема и никогда поздно не будет. > комьюнити больше. Комунити макак которые заново изобретают программирование? Да похуям вообще.
>>2174661 С реактом одна бяда. Макаки не хотят учить ООП, и в оправдание/для рационализации учат ФП базворды, не написав ничего серьезного. И оказываются к тырпрайзу неготовы абсолютно.
На вьюе сложнее написать тормозное говно, чем на голом реакте, для рад самое то. Реакт конечно выигрывает по соотношению качественных либ и тулинг у него намного лучше
>>2174672 Лол, давно не встречал долбоебов, которым эти алиасы всрались. Вы что, не в курсе, что нормальные ИДЕ давно уже импортят автоматом, предлагая варианты?
>>2174659 Так позиции ангуляра были лучше несколько лет назад. Время не на его стороне. Это умирвющий фреймворк. Может где-то он и останется в порядке ичключения, чтоб жавадебилы на своем любимом ооп и паттернах морды делали.
>>2174686 Пиздец, для того, чтобы просто поменять webpack.config.js нужно целую зависимость поставить? пора выкатываться отсюда нахуй Мимо jquery дедушка
>>2174699 А в чем проблема разрабам create-react-app сделать просто шаблон проекта, а не тянуть на себя одеяло конфигурирования, сборки и девсервера? Ща посмотрел, у vue таже проблема.
>>2174700 Есть подозрение, что в пейсбуке специально пилят тулы для тупеньких. Кроме CRA ещё Jest зачем-то сделали, чем оно пижже мочи с чаем я так и не понел.
Можно ли как-то описать вычисление числа, при котором все значения меньше 0 будут возвращать 0. А все значения больше заданного будут возвращать заданное, например 10? К примеру есть некое вычисление, и чтобы привести любое его отрицательное значение к 0, а любое больше 10 к 10, я могу сделать так: const value = Math.min(Math.max(someCalc(), 0), 10) Тогда результат всегда будет больше нуля, и всегда меньше 10. Но не будет ли такое вычисление более долгим, чем ифы? Есть ли способ как-то математически сделать такое без вызова дополнительных функций? Не хочется городить всратые ифы.
>>2174728 >без вызова дополнительных функций? Подобные функции уже с древнейших времен инлайновые в браузерных движках, поэтому там не будет потерь производительности, можешь смело использовать.
>>2174667 Вот этого двачую. Я тут пробовал к реактодебилам зайти со словами "у меня 12 лет энтерпрайза на ваш фремвор похуй, главное уметь код писать" но они начинают затирать что ооп говно мы пишем в ФУНКЦИОНАЛЬНОМ СТИЛЕ и так далее.
В функциональном стиле они пишут useState и .render ( тут JSX говно) И в принципе не в состоянии сделать переиспользуемый компонент которому не нужн стейт менеджер ...
И чтоб типа пройти собес с реактодаунами надо потратить время на их fizz(buzz()) мантры, а времени тупо жалко.
Вот если рынок станет такой, что бОльще денег я смогу поднять только освоиф Rectact то вкачусь. А пока ну эту свинячью мову нахер. Лучше уж бэк на несте пилить чем в эту помойку лезть
>>2174771 >>2174661 Ну и tbh, я жду пока реакто макаки переизобретут паттерн mvc/mvvm, освоят IoC хотяб через DI и решат вопрос передачи данных меджу компонентами без пропсов.
>>2174777 всё это есть IoC это вообще базовая штука, его используют на постоянной основе, просто не осознают этого, обмениваться компонентами можно с помощью стейт-менеджеров просто реакт-девелоперы более умные, чем ангулярщики и они не выпендриваются/не выдумывают баззворды для всего повседневного дерьма, как это делаешь ты
Чувак, ты реально не одупляешь, что в реакте стейт менеджмент во все поля именно потому, что вы тупо не умеете писать в реактивном и(или) функциональном стиле?
В ооп вы не можете, в функциональщину вы не можете тем более, поэтому скачете всю дорогу на костылях типа Redux
Там кое кто уже начал подозревать, что что-то серьезно не так, и запилил MobX
С нетерпением жду когда рекатомакаки научатся в классы и реактивное программирование без стейтов.
ООП в массовом использовании скоро будет такой же архаикой, как и байтоебство. Возгорание залетевшего углодрочера это только подтверждает: "Ряяя ооп настоящее программирование, ничего вы не умеете своими редаксами! Я настоящая элита а вы никто!" - лупит по клавишам сквозь слезы ангулярщик.
Но смузигоспода, как всегда, не обратили внимания на эти вопли. Пусть визжит, что с него взять? Углодрочеру предстоит очень трудное время. У него уже в течение последних лет каждый день был очень трудным.
>>2174673 >Лол, давно не встречал долбоебов, которым эти алиасы всрались. >Вы что, не в курсе, что нормальные ИДЕ давно уже импортят автоматом, предлагая варианты?
>>2174855 Не дурачок, мне не похуй, потому что я хочу иметь в файле код, который может читаться людьми, а не только машинами. Ну и вообще, шел 2021 год нахуй, а жсодебилы с пеной у рта защищали релативные нахуй импорты, потому что им в язык до сих пор не завезли рут резолв модулей. Во всех современных языках это есть из коробки, причем БЕЗ ИСКЛЮЧЕНИЯ, только один ты дебил пишешь нечитаемое дерьмо в импортах и думаешь, что так и надо, потому что кроме жса в жизни нихуя не видел.
>>2174943 >потому что им в язык до сих пор не завезли рут резолв модулей Потому, что жс изначально был спроектирован для единственного рантайма - браузерного.
>потому что я хочу иметь в файле код, который может читаться людьми, а не только машинами >читать импорты
Сука, что же ты делаешь? Остановись. Читать импорты блядь. Был на косом десятке разных проектов, нигде относительные импорты не доставляли неудобств. Но были уебаны, вроде тебя, что еще в определенном порядке просили выставлять импорты в коде. Ты, случаем, не один из них?
Можно как-то ебаный dev server webpack'a настроить так, чтоб он подхватывал изменения в html и сам перезагружал страницу? Я тупой вкатун, пробовал и по докам настраивать, и по гайдам с хабра, один хуй все работает для стилей, но не для html
>>2174950 >Потому, что жс изначально был спроектирован для единственного рантайма - браузерного. Это повод дальше жрать говно и тащить это говно за собой? У тебя есть способ сделать нормальные человеческие импорты, но ты изо всей силы защищаешь говно. Зачем? >Читать импорты блядь Представь себе, некоторые люди читают код и думают над ним, и им не хочется как макаке тыкать мышкой в IDE каждый раз, когда за забором ../ граблей не видно, что за импорт говна и откуда он взялся. Ну и плюс это выглядит абсолютно отвратительно, но если ты из деревни и к заборам привык, то тебе наверное нормально, как дома в хлеву себя чувстуешь.
Сап, аноны, я вкатыш. Листаю вакансии на веб разработчика в своей мухосрани (1кк население) и часто вижу в требованиях битриксы, цмсы, и подобное. Вопрос к опытным, это ведь хуйня какая-то, да? Это те самые вакансии которые с веб разработкой мало что имеют, и являются просто лендингостроями, или все таки это важно знать и уметь? Я даже пробовал гуглить что-то типа "wordpress для разработчиков", но там какая то хуйня сплошная. Поясните пожалуйста молодому, с меня как всегда.
>>2174980 > это ведь хуйня какая-то, да? Это те самые вакансии которые с веб разработкой мало что имеют, и являются просто лендингостроями Именно. Там стандартный набор - worpress, bootstrap, jquery и php тупо на уровне знания синтаксиса базового, чтобы битрикс правильно подключить. Можно пересидеть, набираясь опыта. Это те конторы, которые ты найдешь, если тебе нужен будет говносайт за 15 тыщ по фастику.
Поясните. Если мне нужно получить результат async функции, то я должен делать функцию, в которой эта async функция вызывается, тоже асинхронной? И так вверх по цепочке все функции сделать асинхронными? Тогда они все промисы возвращать же будут. То есть нужно писать void перед ними?
>>2175028 >Если мне нужно получить результат async функции, то я должен делать функцию, в которой эта async функция вызывается, тоже асинхронной? И так вверх по цепочке все функции сделать асинхронными? Да, добро пожаловать в мир однопоточной асинхронности. >Тогда они все промисы возвращать же будут. То есть нужно писать void перед ними? Любая async функция всегда возвращает промис, в чем именно твоя проблема с этим?
>>2175028 Нт ты можешь в месте вызова асинхронной функции цепочку .then().catch() сделать. Естественно тогда асинхронная функция выполнится асинхронно. await же только внутри асинхронной функции валиден.
>>2175103 Ты сдурел? Конечно не откликайся, иначе тред на вечно оранжевом сделают, в hr бан попадешь, под конец загонят. Как вообще можно о таком думать? Ещё бы на какого-нибудь депутата заявку отправил. Твой потоло без вышки только формы на жиквери клепать.
>>2175481 Как тот факт, что у JS целевой рантайм - это браузерная среда отменяет возможность его ымбеддинга в любую сраку. На старте имплементации ничто не мешало вкорячить в тот же нецкейп функционал апача и в хостовое окружение спустить хендлы, которые можно в юзерленд коде дергать и ивенты, на которые можно было бы подписаться?
>>2175537 У js нет никакого целевого рантайма. Он изначально проектировался, как встраиваемый язык программирования. И по спецификации он является именно им.
>>2175626 Сам ты ебанутый. Мог бы догадаться, что в конце предложения продолбан вопросительный знак. Пиздец, как вы документацию читаете? На каждом знаке встреваете, что ли?
Пердолики могут пиздовать спеку читать и надрачивать на её имплементации. Этот тред существует исключительно потому, что жс - в первую очередь язык для скриптиков на сайтиках, а то что там всякие полупокеры встраивают в него непонятно что и непонятно куда с непонятно какой целью - абсолютно однохуйственно.
>>2175685 И почему-то в треде ни одного вопроса по этим манястэкам. Особенно проиграл с электрона. Ты в курсе что это просто нода, которая запускает инстанс хрома, со всеми вытекающими? Из всего этого списка только у электрона есть практическое применение, так что неплохо ты себя заовнил.
У меня компонент, положим главное окно. В нём 2 компонента. Наверху компонент фильтр: датаС датаПо типГовна и кнпк Искать. Под фильтром компонент Таблица.
Сценарий. Пользователь ставит поляны в фильтре, нажимает искатью. На бэк уходит запрос, возвращается ответ, таблица отрисовывает новый результат.
В ангуляре так. Фильтр эимитит Главному компоненту событие "онФильтерЧейнж" с джейсоном полей. Главный компонент берет заинжеченый датаПровайдерСервис, который дергаегает хттпклиент который вернет данные. Когда данные вернуться, Главный компонент при помощи декоратора @Input сунет в Таблицу новый набор данных, и все перерисуется само собой.
>>2175791 в реакте вешаешь на кнопку onClick в него кладешь твой асинхронный запрос, он приносит респонс в зависимости от фильтров (фильтры же на бэк уходят?), на момент loading показываешь спиннер, когда данные загружаются в store, loading становится false и показывается табличка с новыми данными. сейчас делаю похожий проект, только тут поиск по фильтрам
>>2175798 Братишь, ты не уловил. Я не про свистоперделки спрашиваю, типа лодинг шмодинг. Я спрашиваю как реализовать _архитектуру_ приложения.
В моем примере. фильтрничего не знает о своем окружении и ничего не умеет кроме как вякнуть "меня жмакнули" таблица ничего не знает об окружении, кроме "вот тут лежат мои данные, если они поменялись, я обновлюсь" Потоками данных между ними рулит верхнеуровневый компонент, который ничего не знает о состоянии своих деток, и его это не ебет. Он принимает знает что от одного надо запрос перенаправить на сервис, а другому надо скормить ответ.
Я спрашиваю как в реакте архетиктурно решается вопрос вот этого обмена данными туда сюда.
>>2175834 а) что такое просто инжектор? б) зачем мне присать хттпклиент? в) какое остальное? Там же аналога @Input() @Output()
>>2175852 >как в реакте архетиктурно решается вопрос вот этого обмена данными туда сюда От родителя к потомку - через пропсы/контекст. От потомка к родителя - через события, сеттеры. Особо глупые вкатывальщики юзают хранилище стэйста глобальное.
>>2175852 А. Ты ангуляр то видел? Про что вопрос? Хочешь сервис заинжектить - напиши сервис и инжектор Б. Потому что его нет В. Все остальное что в твоём посте написано делается так же. Input - просто пропсы, Output - пропсы которые начинаются на on)))
Ищу адекватного Node.js бэкендера, способного в одиночку справляться с задачами. 3000$ в месяц, без корпоративной культуры, скрамов и прочего треша, только работа на чиле.
>>2175872 >В. Все остальное что в твоём посте написано делается так же. Input - просто пропсы, Output - пропсы которые начинаются на on))) Ну т.е. ты в родительском компоненте пишешь обработчик клика кнопки дочернего компонента,да? И суешь его вниз?
>>2175908 >Тебе нужно чтобы инстанс компонента был, на нем торчал эмиттер, и ты тот же самый обработчик из родителя совал в эмиттер дочки? Мне не нужно.
Тебя не смущает идея писать логику одного компонента внутри другого?
>>2175951 Про какую логику ты говоришь? Ты пока в инпутах не можешь разобраться.
>В реакте так. >Фильтр эимитит Главному компоненту событие "онФильтерЧейнж" с джейсоном полей. Главный компонент берет заинжеченый датаПровайдерСервис, который дергаегает хттпклиент который вернет данные. >Когда данные вернуться, Главный компонент при помощи пропсов сунет в Таблицу новый набор данных, и все перерисуется само собой.
>Как такой же сценарий реализоваться в ангуляре?
>фильтр ничего не знает о своем окружении и ничего не умеет кроме как вякнуть "меня жмакнули" >таблица ничего не знает об окружении, кроме "вот тут лежат мои данные, если они поменялись, я обновлюсь" >Потоками данных между ними рулит верхнеуровневый компонент, который ничего не знает о состоянии своих деток, и его это не ебет. Он принимает знает что от одного надо запрос перенаправить на сервис, а другому надо скормить ответ.
Аноны, вопрос про обучение. Назовите плз учителей которые сперва рассказывают зачем что-то нужно, а потом поясняют как пользоваться. В идеале как сам разработчик языка подходил при создании языка - это нужно для этого, это для этого. Каркас необходимого, движимые части, редкие примочки - условно.
А то учат как в школе, просто надо просто запоминайте просто вот так правильно. А потом когданибудь вспомните
>>2175983 Потому что он умер. После ES6 в нем нужна как таковая отпала. Ну или если не отпала, то осваивание для освоившего ES6 занимает пару дней максимум. Так что смысла сейчас знать жквери нет. Это уже на полку с легаси говном.
>>2175984 >если я это в catch потом ловлю? или он может как-то два задеть Только внутри async функции и только используя try catch, .catch() ловит только первую ошибку
>>2175791 Да точно так же по сути. useItemsFetcher тут просто подразумевается, что в проекте есть какая-то обертка над сырым http-клиентом, имеющая интерфейс в виде реактовского хука.
>>2176274 Отличный совет, жыкверри-сама. Но у меня уже есть абстракция с набором методов для дюжины сервисов, и только в одном из них надо закрыть часть методов. А не "просто взять" и заебашить 10 одинаковых оберток отличающихся только интерфейсом и роутом апи.
>>2176282 Абстрактный класс для того и используется, чтобы расшарить некий интерфейс между наследниками. Ты же хочешь чтобы у тебя был абстрактный класс в одном месте, а его огрызок в другом. Это так не делается, и по описанию уже видно, что ты хочешь слепить лютый антипаттерн, и твоя проблема 100% должна решаться другим образом через композицию.
Аноны, хочу стать дохуя фронтом, писать сайтики а реакте. Подскажите как заниматься? Делать свои проекты это лучшая практика, но как следить за качеством кода? Или лучше всего сразу пробовать искать работу чтобы смотреть как всё на проде выглядит.
А то я пишу кривое недоделанное говно и мне сложно даже простое круд приложение написать