Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: что я хочу получить, что я для этого делаю, что я вместо этого получаю. Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Нихуя не пойму посмотрел два гайда(на медиуме и юдеми) по реакту в одном this.state меняют напрямую через сетстэйт, на юдеми говорят мол в this.state писать напрямую нелязя, нужно кидать туда новое состояние, кто прав?
>>1806955 Для начала вообще тебе надо понять что такое классы и собственно зачем этот this нужен. И да, в реакте можно вообще без классов делать дела. А собственно вместо классов юзаются хуки
То так делать нужно, когда новое состояние зависит от старого, например увеличивает его на 1 или меняет булево на противоположное от старого. Если нам просто нужно установить новый стейт и похуй что там было раньше, можно использовать сокращенную запись:
Вопрос по реакту/нативному JS. Как правильно (в плане архитектуры, хз как иначе выразиться) организовывать процесс валидации формы? Как бы реализовать задуманное у меня получается, но при этом появляется куча кода с различными условиями. И даже я своим не опытным взглядом понимаю, что это какое-то васянство. Где смотреть паттерны решения таких задач? Или это всё максимально индивидуально?
>>1806957 Так и он работает как для даунов, проблема не в this, а в ебучих собеседованиях с ебнутыми вопросами. Идешь на реакт, а для тебя просят как работает this при наследовании классов, тебе это нахуя? Тебе это знание никогда не пригодится, а страх есть.
Все что тебе надо знать, это как забиндить контекст. С учетом использования стрелочных функций и на бидн контекста становится похуй.
А вообще говоря, this это ссылка на текущий контекст. Что тут не понятно?
>>1806996 И вот чтобы создать эту ебучую валидацию, у меня ушло овер 100 строк васянского кода. Вся поля реагирую на фокус и блюр. При отправке формы, все поля на которые пользователь не тыкнул/не корректны, отмечаются не валидными. Вот как бы умный анон подошёл к решению такой задачи?
Как работодатели относятся к бутстрапу? С одной стороны во многих местах в требованиях к кандидату пишут, что хорошо бы знать бутстрап. С другой кое-где такого не пишут, или используют другие фреймворки или хз что. И мне вот кажется, что залью я в свое портфолио верстку на бутстрапе, а кто-то кто будет смотреть мой гитхаб скажет: да этот балбес нихуя не умеет, кроме как с бутстрапа классы копипастить, посмотри он же весь обосранный, все с бутстрапа вытащил. Или я не прав? Буквально первый день его изучаю, а уже огромный соблазн верстать на бутстрапе все, потому что это мега-омега охуенно, удобно, антигеморройно и вообще. С другой стороны, может создаться впечатление, что я и не умею нихуя толком.
>>1807084 Обработать нативные инпаты - не проблема, используя любую либу. Чаще приходиться работать с кастомными контролами, типа дропдаунов, дейтпикеров и т.п.
>>1807089 >Чаще приходиться работать с кастомными контролами, типа дропдаунов, дейтпикеров и т.п.
Мне кажется лучший проект для портфолио это большая удобная форма с валидациями, прикреплением и предпросмотром картинок и просто файлов, текстовое поле с возможностью редактирования текста, как на дваче кстати, 1 в 1 этого будет достаточно
Скорее всего платиновый, но всё же. Мне нужно сохранить данные (json) на клиенте пока пользователь не закончит действие полностью, а потом отправить их на сервер. Где лучше это сделать и как? Парсить json в строку и хранить в local storage? Как это делают на реальных проектах? Ванильный js, если что.
>>1807045 Всем похуй на твое сss говно. Если шаришь в жс, реакте и тайпскрипте то можешь вообще забить на вёрстку. И с другой стороны будь хоть богом верстки без жс максимум верстаком будешь и то скорее нет
Сап, у меня проблема с преобразованием объекта в строку, у меня есть объект который передаётся в функцию, но функция просит именно строку, а не объект, посему встал вопрос с преобразованием, пробовал toString но эта залупа посылает меня нахуй [object Undefined], попробовал ещё new String, но это как оказалось тоже объект.
>>1807215 А я хуй знает, тестируй в браузере разные варианты. Потому что в теории ты можешь забиндить функции кастомный контекст и вызвав внутри функции this.lol=this.lol.bind(this) ты передашь туда именно этот кастомный контекст, а не то, что внутри функции
Алсо, хуею с долбоебов, которые для валидации простой формы советуют тянуть реакт, хуякт, формак, фаршмак и прочее дерьмо, которое рассчитано на крупные проекты.
>>1807307 И почему ты выбрал реакт, а не нативный JS, дегенерат? >>1807303 Каким образом говно на несколько мегабайт в виде реакта, вместо 6-ти строк html-кода будет удобно пользователю?
Знает кто, что как подружить typescript и json парсер? Что происходит, если я ставлю тип переменной number, а с json приходит string и пытается прописаться в переменную?
>>1807365 >Знает кто, что как подружить typescript и json парсер? Только рассчитывать на то, что JSON будет предполагаемого типа.
>Что происходит, если я ставлю тип переменной number, а с json приходит string и пытается прописаться в переменную? Ничего не будет, все пропишется. В рантайме никаких типов нет и проверок, соответственно, тоже.
>>1807310 >Каким образом говно на несколько мегабайт в виде реакта, вместо 6-ти строк html-кода будет удобно пользователю? > Не обязательно реакт, можно и на нативном взять готовую библиотеку для работы с формами, это в любом случае проще и быстрее, чем каждый раз пердолить что-то самому. Решение через паттерны дикое говно, потому что на мобилке ты заебешься заполнять большую форму со сложными валидациями, ебашить прокрутку к неверному инпуту, отображать ошибку рядом с ним. Юзабилити челик. Но ты долбоеб.
Есть некая функция, как "расширить" ее, добавив в конец 2 новые строчки? Это все что нужно сделать, не создавать же из-за этого новую функцию, копипастя большую часть кода, плодя бойлерплейт
Как правильно организовать компоненту алерт? Допустим у меня есть n-ое кол-во компонент, которые должны уведомлять пользователя сообщение, об результате работы. Сама компонента алерта идентична, только принимает в себя сообщение и цвет фона. Как правильно пробросить её для всех компонент, чтобы легко можно было её вызывать?
Не понимаю как получать ответ от санки. У меня есть форма, отправляю данные через санку, она отправляет/получает данные на сервер. И как мне потом получить статус ответа в компоненте? Как организовывается этот процесс?
>>1807860 Единственно что приходит в голову - это результат ответа диспатчить в стейт, а уже в зависимости от того что мы туда записали, уже отрисовывать в компоненте.
>>1807860 >>1807861 Собственно задача такова: пользователь заполняет форму (например ввёл название продутка), отправляет форму. Если всё прошло успешно, ему должно выпасть сообщение, что %продукт_name% был успешно добавлен. Как бы я представляю как реализовать эту задачу, но хочется услышать алгоритм местных экспертов. Используют React и Redax
Граждане сеньоры поясните за оформление, через что привязывать стили и оформление? Могут ли id или className быть рандомными? Если они рандомные то смысла в привязки к ним нет, тогда как оформлять? Через firstChild lastChild?
При вызове функции ,this это глобальный обьект, при вызове метода ,this это сам обьект и этому методу доступны все поля этого обьекта, так если глобыльный обьект самый главный то почему он не может получить доступ к переменным обьекта во время вызова функции? Ебать сложна
>>1807882 Тебе бы для начала русский язык слегка подтянуть, чтобы запятые правильно ставить. А то я несколько раз прошёл, а только с третьей раза дошло. Кинь пример кода, который тебе не понятен.
>>1807886 Поэтому функция стрелка лучше, она не проебет контекст
Если сделаешь calc.bind(this)() вместо calc() получишь контекст вызова. Так уж жс работает. Но что мне не нравится в таких примерах, я не вижу кейсов для задания объекта с функцией, внутри которой будет еще 1 функция. Нахуя вы выдумываете эти костыли? Лучше возьми задачу и напиши под нее бизнес-логику и уже на реальном примере думай, что тебе в жс не понятно.
>>1807882 Патамушта JS изначально был языком сценариев для html, потом его сделали языком программирования веб-приложений и он находится еще в ранней стадии развития, представляя собой жуткую смесь псевдоООП с Си синтаксисом и недофункциональной парадигмы с непрерывно добавляемыми хипстерским свистоперделками и синтаксическом сахарком вроде ??= Хуевый язык, я думал намного лучше будет, когда пишу под winAPI на крестах или няшной сишке - получаю удовольствие, архитектурную красоту и концентрацию на логике, когда пишу для веба на JS - постоянно думаю о средствах языка и подводных камнях - это признак хуево спроектированного языка или то что он сыроват, а пишу я на том и другом более десяти лет. Хотя благодаря низкому порогу вхождения он нужен сейчас - во время замены ПК - веб платформой, а потом уступит нормальным промышленным языкам вроде С/C++, уже начинает уступать - первый звоночек это веб ассембли и интерфейсы для работы с драйверами устройств в хромоговне.
>>1807900 >Нахуя вы выдумывае Я лишь хочу понять этот сучий this, именно блять понять а не посмотреть видос какого то хуего ютубера кивнуть башкой и сказать сам себе «а ебать это ж так и есть хули тут не понятного»
Такая тема, мне приходит число общего количества страниц и мне надо сделать запросы на все страницы кроме первой (индекс первой страницы 0). Как это можно красивее сделать в плане циклов? То есть если передается число 3, то внутри этой функции должно выполнится: someFunc(1); someFunc(2); Пока придумал вариант как на пике, но как-то немного криво выглядит.
>>1807974 Да забей ты на этот жопаскрипт, можно тупо сразу реакт выучить по курсу Юры Буры. Я вот за 2 дня осилил курс, сейчас работаю 150к в наносек. И нахуй не нужон этот ваш жопаскрипт. HR когда видят в твоем гитхабе проекты из курса Буры, сразу текут и готовятся брать тебя на огромную зп.
>>1807976 интересует именно в плане стандартов и актуальности. я так то бэкендер, и пишу на js по мелочи какие то вещи иногда по работе уже где то полгода. и буквально только в мае перестал юзать var, а в июле узнал про стрелочные функции и spread операторы. сейчас думаю как актуализировать свои знания , чтобы не быть говноедом и не делать велосипеды, а писать как нормальный человек.
>>1808001 >Сейчас кстати скидки на Юдеми, всего 900 рублей и ты из грязи в князи. think about it Сейчас кстати (круглый год) скидки в 100% на сайте rutracker.org и nnmclub.to
>>1808004 блять кстати именно с nnmclub качал курс от ивана петриченко по продвинотому js и react типо. ахуенно разжевывает, но когда дошел до момента где используются объектные компоненты вместо функциональных если нужно хранить состояние, то тут чет уже призадумался и хуй забил >>1808002 блять это еще нормально. я посмотрел базовый helloworld на расте и там ваще пиздец. если тут ты просто пишешь let text = 'Hello world' то там let mut zal text = new String(); и все в таком роде. жесть кароче. >>1807974 - кун
>>1807904 Что там понимать то? this это то что у тебя перед точкой стоит, точка в данном случае это объект который содержит вызываемый метод в котором ты к this обращаешься. Все функции объявленные в глобал скоупе, объявляются в объекте window, поэтому по дефолту this это window. Если есть объект window.object1 то все функции внутри этого объекта будут иметь this == window.object1. У стрелочных функций this всегда == window/
>>1808012 >но когда дошел до момента где используются объектные компоненты вместо функциональных если нужно хранить состояние, то тут чет уже призадумался и хуй забил Там рассматривается три варианта где и как хранить стейт.
>>1808012 Только я не понимаю зачем курсы если есть доки и статьи? Начинаешь с доков, что не понятно ищешь в инете. В том числе и практики использования.
>>1807861 >>1807878 Решил проблему с помощью Portal'ов. Теперь в любой части приложения вызываю компоненту с модальным окном и она появляется там где надо. Но остался вопрос: а где и как хранить состояние, при котором та или иная модалка появляется? В санке происходит запрос на APIшку и статус ответа записывается в стейт. Компонента выводит ту или иную модалку, в зависимости от статуса. Но тут проблема: компонента же обновляется от ряда других факторов и поэтому модалка вечно висит открытой. Как решить эту задачу? Желаемый результат: санка сделала запрос на API, получила ответ и в зависимости от ответа выводил модалку.
>>1808017 согласен, но на первых порах это помогает тк тебя прямо ебалом тычат куда где каво откуда и тд. я когда бэк изучал то так же делал поначалу когда было понятно больше чем нихуя. а когда освоился то начал читать доку и непонятки в инете с практиками и примерами. и только так складывается паззл воедино ну лично у меня так
>>1808043 удваиваю >>1808013 ты че совсем ебанутый ? у стрелочной функции нет своего контекста вызова - она его возьмет у родителя. и тут уже в зависимости от того как ты написал.
>>1806950 (OP) Бля какая ебля с этой хуйней, пиздец. Решил попробовать покодить на Джаваскрипте, скачал ебучий еклипс, и мне просто не дает писать. Сука, ну че за хуйня?
Посоны, нужно ваше мнение. Устроился два с половиной месяца назад на первую работу недомидлом. Дс, 100к в месяц, 9 - 18 как на заводе. Сначала все было ОК, потом все норм люди разбежались в топ тир компании на 200-300к в месяц. Ушло человек 10. Сначала один устроился в сбер на 320к и две недели отработки показывал всем фотки их офиса и рассказывал как там охуенно. В итоге все также захотели На фронте остался только я, один мидл и совсем джун. Оставшийся мидл на все вопросы отвечает что занят и сидит решает задачи на литкоде. Я хз когда мне отсюда отчаливать. Имеет смысл хотя бы до НГ поработать, или лучше усиленно задрачивать теорию для собесов и валить через месяц? Насколько реально на такую же сумму найти удаленку?
>>1808210 Что у вас там пиздос случился, если большая часть разработчиков разбежалась? Вообще 100к не ужасно для начала. Два с половиной месяца совсем как-то мало, будут на собесах неудобные вопросы. Но можешь провентилировать рынок аккуратно.
>Насколько реально на такую же сумму найти удаленку? Попробуй, конечно, но вообще нубов на удаленке не особо любят.
>>1808244 Аргумент и возвращаемое значение. Чистая функция при одинаковых аргументах возвращает всегда одно и то же. Например, функция которая возвращает текущее время — не чистая, даже если не вызывает сайд-эффектов.
>>1808240 >Что у вас там пиздос случился, если большая часть разработчиков разбежалась? Так я же написал. Одному дали оффер на 320к, остальные начали тоже по собесам бегать и хвастаться кто больше получит. >Два с половиной месяца совсем как-то мало, будут на собесах неудобные вопросы. Ну по факту уже 4, когда начну работу искать. Мне же теорию еще задрочить надо, чтобы в норм место пойти, а не менять одно дно на другое + всякие пет проекты допилить. Я хз насколько я нуб. Мне трудно оценить себя. Сейчас мне доверили доработки по ЛК делать. Новые странички делать, на старых окошки менять. В целом особых сложностей не возникает. Все работает, ПМ доволен.
Аноны помогите разобраться в хуке useEffect. Пример из доки. Эффект с этапом сброса.
Но что мы сбрасываем?
Идем далее. Как я понял метод subscribeToFriendStatus подписывается на какую-то рассылку. А метод unsubscribe который мы возвращаем наоборот отписывается (это и есть вроде сброс). Но где реализация этих методов? Как они работают? Или это не важно и мне не стоит заморачиваться такими мелочами?
>>1808315 >У нас на проекте кста for in запрещён Итератор не перформит, да. Но вы все равно додики, ибо экономите на спичках. еще раз втираю для дауничей - медленный не JS, медленные операции на DOM и вот там уже имеют смысл различного рода оптимизации.
>>1808364 ну ты пользовался когда-нибудь связкой componentDidMount + componentWillUnmount? Например в cdm повесил ивент на скролл документа, в cwu удалил ивента. Тут тоже самое
>>1808364 >Но что мы сбрасываем? хэндлер отвязываешь, кароч >это не важно и мне не стоит заморачиваться такими мелочами? это
в ирл проектах ты будешь отвязывать хэндлеры событий, отменять таймеры и всё такое чтобы не получить ошибку >Can't perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in a useEffect cleanup function. Так что если увидел такое, знай — useEffect делает что-то за уже убраный DOM и надо сделать клинап
Почему люди, которые разшарили что-нибудь становятся просто невероятно высокомерными и обоссывают новичков за любой вопрос? В чем психологическое объяснение данного феномена?
>>1807045 Бутстрап это инструмент, который нужен в коммерческой разработки типа лендингов и магазинов Чтобы поставить производство рутинных задач на конвеер
Отказался от перебирающих методов типа map(), filter(), forEach(), reduce(), и т.д. Все делаю на циклах. Контроль намного лучше, тут тебе и break и шаг цикла и continue и даже label. Про перфоманс даже и говорить не нужно.
Вот у меня есть блок кнопок. Каждая кнопка выполняет определенные действия. Но при этом действия могут пересекаться. Например две кнопки запускают одну функцию с разными параметрами и делают еще какие-то разные действия.
Повесил обработчик на клик блока кнопок. Проверяю через switch что нажато и запускаю нужные действия. Тут сказали, что свитч хуета, тогда чем заменить? if else? С ним тогда больше дублирующиего кода будет, т.к. switch позволяет выполнять код на два блока (без break).
>>1808945 вот никогда не понимал что заставлять в случае посылания на хуй нахуй писать слитно?вот все заебало нахуй - тут пишется слотно,а если ты куда-то идешь на север например или в пизду - никто не пишет все эти вещи слитно автокорректор браузера сильно облегчил жизнь безграмотным чушкам но они эневей палятся на разной хуйне
Не по теме, но всё же. Как вообще придумывают дизайны? Вот решить какую-то задачу легко: придумал алгоритм, навасянил, и скрипт работает. Но сцука как эти сверхлюди умудряются придумывать дизайны? Я вообще не понимаю. Может они их откуда-то воруют?
>>1809008 >Дизайны они пиздят Где лучше всего пиздить дизайны? А то какую-бы хуйню я бы не написал, выглядит она одинакова. Потому-что фантазии на такого рода креатив у меня отсутствует.
>>1809003 1. Зашел на сайт. 2. Понравился? - да - пиздишь дизайн, меняя цвета \ нет - переходишь к пункту 1.
Ты сам посмотри, все сайты друг на друга похожи, все тренды в дизайнах сайта легко улавливаются, достаточно зайти на самые популярные. Сейчас тренд это вертикальный скролл и горизонтальные секции с каким-нибудь свистоперделками которые оживают в момент когда до них доходит скролл.
>>1809055 >Не знаю ни одной ооп макаки которая признала бы себя макакой хотя функциональщина уровнем выше >функциональщина уровнем выше
А, так ты из тех дауненков, которые думают, что пишут функциональный код, потому что объявляют функции в глобальном скоупе. Так бы сразу и представился, никто бы на дурачка времени тратить не стал.
>>1809081 >Пишешь все на функциях значит функциональный код Но ведь классы в ЖС - это те же функции. Выходит, все ООПшники - тоже латентные функциональщики? Wait... Oh, shi~
>>1809081 >Пишешь все на функциях значит функциональный код Игорь, ты? Узнал тебя по этим шизоидным высерам. А помнишь как мы тебе всем тредом нассали на голову 3 месяца тому назад? Ты долго плакал и пытался доказать свою правоту, но какой в этом толк, если ты весь пропах ссаниной?
Нихуя не могу понять. В чем фундаментальное различие между null и undefined. Не мелкие детали а фундаментальное. Ведь null значит отсутствие значения. А undefined что оно не определено. Но если написать var x console.log(x)
То выдаст undefined. Хотя значения же нет значит может быть null
>>1809198 Различие больше семантическое — null значит что вообще-то поле такое есть, но значения у него нет, а undefined что и самого поля нет. Другими словами, null обычно задается руками и осознанно, а undefined получается случайно.
>>1809206 >Пацаны, как на этом форуме сообщения удалять? Написать в личку главпетуху мочературу и анально поклясться, что больше не будешь писать чепуху.
Пасаны как вы не путаетесь в жс? Например где-то условно прочитали мол такой то цикл лучше использовать в объектах. О каких объектах идет речь? Что-то типа var x = {}? Или всех что не примитивы? Как вы не путаетесь?
>>1809239 Правило простое - если у тебя массив, то ты используешь map, reduce, filter, forEach, some, any и т. д. Если у тебя объект, то ты используешь цикл for in , либо Object.keys/values(obj) и работаешь с массивом.
>>1809271 Не, ребят. Я то понимаю какой цикл к чему. Я просто к тому что js ваш какой-то запутывающий. Когда что-то поясняют за объекты то не сразу понимаешь идёт ли речь об объектах как в других ЯП (то есть {}) или же в значении все что не примитив то есть и функции и массивы
>>1809045 >>1809003 >>1809019 >>1809011 >>1809008 Как человек проработавший дизайнером 5 лет и перекатившийся во фронт - дизайнеры это второсортный скот, на которых всем похуй, плевать, которые никому не нужны, которых повсюду навалом, можно менять пачками по 5 раз в день, для которых ни один человек во вселенной не может даже вообразить принцип поощрения в виде премий за "хорошую работу", потому что блядь всем просто поебать на то, что ты делаешь мразь, только попробуй слово скажи, за тобой еще 100 человек с ножами у тебя за спиной стоят и только ждут когда ты освободишь кресло, чтобы разорвать тебя, ублюдка, на куски. Тебе всегда будут платить мало, а вершина твоего развития это вообще минимальный уровень, чтобы барин хоть как-то обратил на тебя внимание, и так уж и быть, ухмыляясь столкнул тебе объедки со стола, мразь. У тебя нет никакого карьерного роста, за 5 лет любой хоть сколько-нибудь толковый кодер уже станет богом, сверхчеловеком светящимся в темноте и вокруг которого на коленях люди будут стоять, чтобы ты только хотя бы на мгновение одарил их своим вселенским взором, которому они и офис хороший подберут, и предложат оплатить оборудование, которым ты будешь пользоваться валяясь на диване у себя дома, потому что тебе похуй откуда работать, тебе не смеют указывать. Дизайнер же это последняя скотина и тварь, которую будут бить по спине, погонять, и если очень-очень сильно повезет, может быть даже премируют на 4-6% от твоей базовой ставки. Никакого карьерного роста у тебя в принципе быть не может, вообще, ни-ка-ко-го, понятия джун/мидл/сеньер вообще нет в дизайнерской среде, только если ты не был тим лидом, или как-то управленчески не отличился. Никогда не становитесь дизайнерами, просто пошли они нахуй, дизайнеры хоть как-то выживают только за счет кодеров, за которыми хвостом, так уж и быть, с величайшего позволения увязались дизайнеры, чтобы объедки собирать. Пиздабольские рассказы о том, что "ну вы же занимаетесь творчеством" это самый главный и лютейший наёб, творчества здесь не больше чем у наматывальщиков на валы с завода, или у пыльного сотрудника администрации. Блядь, когда я только-только начал кодить, у меня уже на hh было более 500 показов профиля в неделю с нулевым опытом, у профиля дизайнера с 5 летним портфолио и 5 летним опытом около 40 показов, сука, за неделю, это пиздец. И знаете в чем самый ахуй? Моя зп на позиции джуна во фронте УЖЕ была больше, чем на позиции дизайнера на позиции ПОМОЙ ПОЛЫ СДЕЛАЙ МАКЕТ СУКА БЫТРО ТВАРЬ ЧТОБЫ ВСЁ ИДЕАЛЬНО НАХУЙ ХУЛИ ЗДЕСЬ ПИКСЕЛЬ НЕ В ТОМ МЕСТЕ ПОЧЕМУ ТЫ НЕ ЗНАЕШЬ КАК ЭТО ДЕЛАЕТСЯ ВОТ ТЕБЕ ЕЩЕ 9000 ЧАСОВ ОБУЧАЮЩЕГО МАТЕРИАЛА КОТОРЫЙ НИКАК НЕ ПОВЛИЯЕТ НА ТВОЮ ОПЛАТУ ТВАРЬ Просто пиздец сколько у меня боли и обиды от того, что я в свое время не выбрал кодинг, а увяз в этом ёбанном болоте, но уж лучше поздно, чем никогда. Пошли все дизайнеры на хуй, никогда не становитесь дизайнерами.
>>1809287 Потому что функции сразу инициализируются, иначе их нельзя было бы писать в любом месте кода и вызывать из любого места, а пришлось бы все функции объявлять вверху.
>>1809322 Это я понял. Представь что мы говорим о временах когда не было лет и конст. Что давало поднятие переменных? С функциями логика легко прослеживается? Но смысл с переменными если все равно будет undefined
Какие способы есть быстро создать Array из одинаковых элементов? Например что-то типа let arr = [10] * 100 написать нельзя, только через цикл for такое можно гонять?
>>1809428 Если бы не было, он бы выдавал Uncaught ReferenceError, а не undefined. Undefined значит переменная есть, но не инициализирована. Вот именно такое поведение у var переменных - они переносятся наверх, но не инициализируются до места их непосредственной инициализации в коде. Ты пишешь: function x(a) { console.log(a); } x(a); var a = 12; А это всё представляется в виде: var a; function x(a) { console.log(a); } x(a); a = 12;
>>1809308 Просто ты как дизайнер - говно. Я не в целях обидеть, я по себе сужу. Сам работал юристом, нихуя не получалось - не мое. Говно, а не юрист. Перекатился на фронт - работа в удовольствие, все интересно и все получается. Так что наоборот - хорошо, что ты выкатился.
В моей прошлой конторе было двое дизайнеров - одна девочка 24+, и мужик 37 лет. При этом у девочки весь биханс забит ее "творчеством", волосы розовые, татухи, пирсинги - просто ОРЕТ о том, какая она творческая вся. А мужик выглядел как советский интеллигент, только без очков. По образованию - дизайнер городской среды, лол.
При этом когда смотрели макеты, ВСЕ клиенты выбирали себе мужика в дизайнеры (самих людей они не видели, только макеты). Девочка обычно у него на подсосе работала и он постоянно ее учил, почему она делает говно.
Так вот вся контора держалась считай на этом дядьке-дизайнере. Все крутое портфолио в конторе - все только благодаря ему. Директор с ним ездили в Москву и Питер на конфы всякие, дядьку этого звали в Москву арт-директором (а он не ехал потому что ДАЧА У МЕНЯ ТУТ КУДА Я ПОЕДУ ебать).
>>1809003 Ну ващет есть ТЕОРИЯ, которой дизайнеры активно пользуются. Околохудожественные книжки по теме (дебичи кто с дивана орет, что это просто талант и всё рисуется из головы, могут нахуй прогуляться), типа "Искусство цвета/формы" Иттена или книги Эдварда Тафти, которого всё тот же Лебедев упомянутый в треде продавал на своём сайте. https://store.artlebedev.ru/books/lebedevs-choice/tufte-set/ В целом, гугли что такое художественная композиция, или иди в /pa/ и смотри в шапке верхнего треда ссылки на яндексдиск, где есть категории книжек по теме.
>>1809809 При чем здесь твой вуе, дурачок? Это тоже самое что на вопрос "определить расстояние между двумя точками в прямоугольной системе координат" и ответ "используй теорему пифагора" ответить "из математики её вроде как выпилили".
В том и дело, что его переопределить нельзя, хуесосина тупорылая, можно только осиановить уже запущенный и создать новый. Хуею с советчиков-дегенератов, которые даже выразить свои мысли не могут и базовых вещей не знают. Ну ничего, главное ссылку на гитхаб высрать, которая никак не влияет на то что ты в своем посте срыгнул.
Есть функция типо myOnClick(userId), как установить эту функцию к элементу с неким дефолтным аргументом userId? То есть я провожу некие действия, нахожу нужный мне userId и привязываю к событию функцию именно с этим userId
>>1809995 TS более-менее гарантирует что проект внутренне непротиворечив — всем функциям передаются параметры ожидаемой формы, никто не вызывает несуществующих методов и т.д. Это очень сильно помогает, когда ты рефакторишь какой-нибудь функционал, который так или иначе задевает несколько разных модулей.
>>1809995 Типы прописываешь. Тем самым легче контролировать приложения. Жс очень много вольностей допускает.
Это как если бы у тебя девушка гетеросексуалка (тайпскрипт) и ты лишь переживаешь как бы ее альфачи и вазгены не выебали
Или у тебя девушка пансексуалка (JavaScript) и ты переживаешь как бы ее не выебали Ащоты, тянки, лезбухи, трансы, соседская собака и все что может двигаться
>>1810004 Была фитчей когда тебе нужно было простенькую анимацию на странице показать, либо валидировать ввод. Сейчас код на JS может разрастаться до нескольких тысяч строк, когда такое происходит, то динамическая типизация идёт только во вред.
>>1810031 Любой тру мастер знает что динамика это как оружие. Давать в руки макакам нельзя. В то время как статика это перцовый балон. По сути пук. Но наломать дров неумелым ручкам сложнее с ним
>>1810031 А я обзмеюсь что такой "тру" мастер будет зарабатывать меньше веб макаки над которой смеётся. Как мой кент крестовик у которого только один тру язык это кресты и остальное говно. А на вопросы о том если такой умный то почему такой бедный всегда затыкается лол
>>1810094 дженерики тайпгарды аугментация модулей тайпалиасы vs интерфейсы стандартная библиотека тайпутилит сумма типов произведение типов структурная типизация vs номинативная умение выразить любую тайпутилиту из ts-toolbelt типобезопасность в рантайме
>>1810378 хук это делегированный обработчик, добавляя хук ты добавляешь обработчик в цепочку обработчиков, который обрабатывает данные нужным тебе способом и передаёт их следующему обработчику
>>1810584 >Что непонятно? Спрашивай Вот надо прям всё всё всё типизировать? Вот прям все все начальные стейты, что возвращает редюьсеры, что приходит в экшоны? Вот прям так надо? Или же можно что-то пропустить.
>>1810615 Ок. Ещё вопрос: нужно ли выносить в отдельный файл, где типизация повторяется? Например в стейте есть массив и в компоненте есть массив. Везде расписывать его, или же сделать типизацию в отдельном файле, а потом импортировать её?
Как мне правильно настроить linter-eslint в атоме? Делаю yarn init в папке с проектами, потом eslint-init. Все работает, но autocomplete paths (или как-то так), жалуется на слишком тяжелую папку с проектами и перестает работать, а печатать ссылки без него то еще удовольствие. Если я сую все модули и файлы которые команда yarn init качает в папку с проектами в отдельную папку, а потом делаю eslint --init из папки с конкретным проектом, то автокомплит работает, а линтер нет.
Глобальный стейт и ваши рдаксы полнейшее говно. То бились с глобальными переменными, то все нахуй назад и еще с какой-то ебнутой идеологией, где на 1+1 надо десять файлов создавать и ваши эти редюсеры/еффекты, которые НИХУЯ НИКОГДА не переиспользуются нормально. Пруф ми вронг плизик.
>>1810665 Заметил, что недоджуны вкатывальщики оче любят такие серверлесс сервисы. А потом плачутся, когда надо что-то сложнее 1+1 сделать или он вообще закрывается (реальная история). Еще ходят рассказывают, петушатся "ваши серверы не нужны". Ты из них?
>>1810677 >н е поняв вопрос ну ты скот невежественный блядь,я хуею с кем в одном треде сижу где культура дискуссии блядь? зачем этот чмошник вообще свой пиздак открыл,че он несет бляяя
Как правильно пробрасывать пропсы на несколько уровней вниз? У меня есть функциональная компонента, в которой ряд функций и подключается connect от Redux'a. Но есть несколько презентационных компонент. И получается такая ситуация, что мне нужно получить данные в презентационную компоненту из функциональной, и приходится пробрасывать из через одну-две компонеты. Если я правильно понял, то нужно использовать Provider'ы в этих случаях?
>>1810689 Если ты используешь редакс то зачем тебе пробрасывать их так далеко. Просто подключи свой компонент к нему через connect. Либо используй context. Можешь хук useContext
>>1810692 >Если ты используешь редакс то зачем тебе пробрасывать их так далеко. Просто подключи свой компонент к нему через connect. Ну умные дяди говорили, что нужно максимально отделять функциональные компоненты, от презентационных (в которых должна быть только разметка и данные, полученные выше) >Либо используй context Ну я же про это и говорил, что надо ведь по идее использовать Context.
>>1810700 Ну да, в ней находится только логика, которая необходима для разметки. Например функция для отправки формы, или какая-нибудь херня при клике на кнопочку. Ну и собственной в неё приходят данные со стейта, которые она распределяет во вьюху
>>1810725 >не умеют в адекватную поддержку Но она хотя бы есть, а не вот вам доски и зубило, найдите на мусорке детали и соберите телевизор. лет зе срач бегин/континью?
>>1810649 Всё так, фейсбук выкатил flux для своих нужд а фронтендеры не разобравшись что к чему начали тащить во все свои проекты не разобравшись зачем это вообще нужно, впрочем ничего нового.
Как задать типизацию для хука useState? У меня есть хук useState, который по умолчанию содержит пустой объект и в процессе заполняется данными. То есть, конструкция имеет такой вид: const [name, setName] = useState({})
Чет посмотрел на вашем ютубе собесы на джунов, я так понял что ты должен хотябы пройти курсы на каком нибудь хэкслет что бы с тобой хотя бы начали говорить,
>>1810877 Ну кто ж виноват, что жс такой язык, что обрастает фичами и экосистемой как опухолями и все это надо как-то знать даже чтобы сделать формочку выбора гендера и диаметра ануса в crm
>>1810879 Да блять нет, там типа везде спрашивают как пришел к этому где учился, ну типа у тебя уже есть база 100% после курсов и с тобой можно отчем то говорить, вот я и думаю, если меня спросят какие курсы проходил я же не пиздану мол спиздил на торенте, ну и о чем говорить с самоучкой?
>>1810882 Никого не ебет какие курсы ты там проходил. Никому и в голову не придет спросить такое. Тебя прямо будут спрашивать про жс, вёрстку, хтмл, реакт, редакс и т.д.
>>1810882 >я же не пиздану мол спиздил на торенте Какая разница как ты эти курсы получил? На курсах ты делаешь проекты, заливаешь их на гитхаб, делаешь свои проекты, на собесе показываешь. Гораздо лучше, чем электронный "сертификат" с скиллбокса.
Если деньги тратить некуда - вперед, покупай воздух
>>1810726 На мусорке так много деталей, что можно и конструктором поработать, а не стучаться к петушкам и молить, что бы они что-то сделали. А они внесли это в свой роудмап с планом сделать через 3 года.
>>1810903 Ещё как используется. Бери за правило рассуждать так. Чем дальше от крупных городов миллионников тем больше жиквери. Прямой аналог vue навернл
>>1810905 Я как раз из такого города. У нас буквально полгода-год назад в каждой второй вакансии было требование жиквери, а сейчас что-то все меньше и меньше.
>>1810916 Он там и был ради легачи, то есть, чтобы переписать с него на что-нибудь нормально. Это как сейчас в любой вакансии на бэк с go есть требование php, чтобы переписать его на что-то нормальное.
В js можно указать произвольные позиционные аргументы через ... вроде этого: let f = function(firstArg, ...moreArgs) {} В примере выше moreArgs это массив, в котором будут лежать все другие аргументы кроме firstArg. А как указать именованные аргументы?
>>1810944 Для сайта-визитки только конченный даун будет использовать реакт, тоже самое с интернет-магазинами для которых уже существует множество библиотек и они основаны на jquery
Не бойся. Если вкатуна не интересует программирование (и он тупо за бабками пришел туда) и/или он слишком туп для этого, то он не составит конкуренции толковым фронтендерам. Тем более мидлосеньорам.