Это копия, сохраненная 7 июля 2022 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Больше пары строк кода в посте или на скриншоте ведут в ад.
Для программирования на HTML https://codesandbox.io
Для Node.js с консолькой https://repl.it/languages/nodejs
Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
Перый это первый, а не в перьях
ТС, ангуляр, rxjs
>ангуляр
только если ты джявадибил
Деньги сейчас только в реакте. Часто слышу что переписывают приложения с ангуляра на реакт, но ни разу не слышал чтобы наоборот. Но какая разница если вы петуханы все равно не вкатитесь никуда?
if (document.querySelector('xxx')) {
document.querySelector('xxx').someFunc();
}
if (document.querySelector('zzz')) {
document.querySelector('zzz').anotherFunc();
}
Селекторы разные, действия и количество действий с ними тоже. Без if-ов при отсутствующем элементе скрипт падает с ошибкой. Как нужно записывать такое, чтобы было правильно-читаемо-красиво? Особенно с учетом того, что эти селекторы пиздец какие длинные.
const callIfElemExists = (selector, callback) => {
const elemOrUndef = document.querySelector(selector)
if (elemOrUndef) callback(elemOrUndef)
}
callIfElemExists('my-button', elem => {
elem.doA()
elem.doB()
})
callIfElemExists('my-other-div', elem => {
elem.doSomethingWithOtherDiv()
})
Сохраняй вызов в переменные наркоман.
Ты забыл словарик для своих магичесских строк объявить.
>Приходит все стили сразу для мобильных, планшетных, дестопных экранов?
@media запросы в файлах стилей.
Существует ли какой-то альтернативный способ рендерить одинаковые компоненты jsx кроме как рендерить массив из них?
var items = [1, 2, 3]
var array_with_jsx =[]
for (i in items){
array_with_jsx(<div>{i}</div>)
}
render()
return(
{array_with_jsxs}
)
Как-то не по-взрослому что либ. Как это ирл осуществляется?
items.map((item) => (jsx))
Да, спасибо, как-то совсем на ум не пришло использовать map, и что он лучше выглядит.
Но если jsx элемент громоздкий, мб стоит его классом оформить или вообще разбить реакт на представление и данные?
Какой класс, дядя? Ты откуда вообще вылез с этими форами, варами и прочими представлениями и данными? Рякт позволяет оборачивать любой компонент в любой другой компонент, и даже внутри компонента можно оборачивать дочерние компоненты, ничего о них не зная. Композируй как тебе вздумается.
>форами, варами
Так я и спрашиваю какая альтернатива есть данному решению с массивом. Задача - вывести N однотипной фигни вроде постов или карточек товаров, или элементов формы.
Как ты блять собираешься выводить списки без массивов?
Он тебе не про конкретную задачу, а про то что вместо var нужно использовать let и const, а вместо for обычно используют методы массива.
А что там поддерживать? Вебпак внезапно разучится парсить css файлы?
Хороший, запоминающийся термин. Долой англицизмы.
1. Чем type alias отличается от interface?
2. Чем extends отличается от implements?
1. То есть главное различие в изменяемости интерфейсов?
2. Получается, implements ничего не меняет и не создает, а просто проверяет уже существующий класс на соответствие интерфейсу?
интерфейсы с одинаковыми именами объединяются в один, так например ты можешь задать несколько сигнатур у функции
ты не можешь имплементить класс от типа если он создан операцией oбъединения |
ты не можешь экстендить интерфейс от типа если он создан операцией oбъединения |
Импрементим классы от типов и интерфейсов. Экстендим классы от классов. Экстендим интерфейсы от интерфейсов и типов. Типы получаем с помощью операций объединения и пересечения типов и интерфейсов.
Еще класс может класс имплементить, потому что тайпскрипт
Анон, скинь этот сайт еще раз! Заебался уже искать это говно.
Алсо, анон, есть какой-нибудь фреймворк для рендера канваса? Шобы было как современный реактивный фреймворк, но на канвасе. Впринципе я нашел s.js, можно на нём напердолить. Либо на solid-js и /packages/solid/universal. Но выбор-то нужен побольше.
Почему нет? Тебя производительность беспокоит или чо?
Вообще закатывайся на флаттер, если чо. Оно вроде нормальное, если вебвейв не очень.
PWA можно публиковать в маркете.
Хуйню как раз ты высрал, в следующий раз бездумно не копируй наполнение видосиков.
Ты задал очень базовый вопрос. Никто на него не будет отвечать, так как тред посвящён языку программирования, а не написанию вкатунских хэлловорлдов.
Зум попробуй. На другом сайте попробуй. Залей на кодпен и здесь опрос устрой
Ангуляробляди, вы же хуже бездомных собак, нахуй вы живете? Чел с пикрила по делу обоссал очередной громоздкий бойлерплейт с ебическими переусложнениями, на что обоссанцы сразу же на него накинулись. Учите уже наконе нормальные фреймворки, так ведь и будете квадратно-гнездовые формы хуярить, которые все меньше и меньше объема на рынке занимают
Был бы я им, хрен бы я этот скрин вбросил, я даже свой гитхаб на двощ на всякий пожарный никогда не вкину
то есть \_\
Linaria?
Goвноед, спок.
Сразу видно что автор мемеса — вротендер. Мужыки крашат сервис при первой же ошибке нахуй, засирают всё логами и потом оживляют его!
Зачем обращать ванимание на петухабриков? Зачем вообще читать петухабр? После 2014 он в говно скатился, после 2017 это просто кусок кала состоящий целиком из продажных статей, после 2019 это жидкая дрисня ака пристанище шизофреников, которые всерьез обсуждают лечение ковида витамином Си.
Хз что там с кодом кста, нихуя этот кусок кала не понял и понимать не собираюсь, так можно и ебанутым шизоидом стать.
Как фронтенд, так и бэкенд-использование.
90% ts есть в современном js. Типы/интерфейсы в основном для автокомплита и линтера используются, ввод юзера, ответ сервера все равно по-старинке разбирать нужно.
>90% ts есть в современном js
Анус ставишь?
васянские линтеры и уебищные jsdoc юзать будет только отменный изврат
>90% ts есть в современном js.
Дивный манямир.
>ввод юзера, ответ сервера все равно по-старинке разбирать нужно.
Тебе и на джаве-хуяве нужно валидировать ответы серверов и вводы юзеров. Причём здесь типизация?
>>30802
Кроме системы типов, какие у тс еще остались фичи не попавшие в стандарт жс?
> Тебе и на джаве-хуяве нужно валидировать ответы серверов и вводы юзеров. Причём здесь типизация?
При том, что на джаве ты не занимаешься 90% времени конвертацией джончиков. А на клиенте городить десяток слоев абстракций это дурость.
Ну попробуй натянуть useReducer() на вcю свою программу, как раз получишь редух.
Там кстати созателя редуха обоссали на собесе как джуна-вкатыша:
https://www.youtube.com/watch?v=XEt09iK8IXs
Мы вам перезвоним
>При том, что на джаве ты не занимаешься 90% времени конвертацией джончиков.
Вот как раз сервера большую часть времени занимаются перекладыванием джейсонов, аж целые книги написали и паттерны перекладывания придумали для всего этого. Даже всякие postgresql научились перекладывать джейсоны.
>А на клиенте городить десяток слоев абстракций это дурость.
Конечно же для туду-листа никакие абстракции не нужны. Но мы говорим про фронтэнд. Плюс есть сервера на ноде, так что можешь залезать в свою дыру, откуда вылез, пердоля.
>Конечно же для туду-листа никакие абстракции не нужны. Но мы говорим про фронтэнд
Вротенд и не должен быть сложнее туду-листа. Нахуй тогда нужон этот ваш вротенд, если там классы через классы через говно кал залупу и тысячи конструкторов в конструкторах, которые мало того не упрощают (для чего и придумали высокоуровневые абстракции вообще-то) так еще и производительность в нулину убивают.
Конечно к тс это не относится, на VSC с IntelliSense заебись писать.
TS будет подсказывать где ты ввод пользователя/ответ от сераера верно разобрал и проверил. Не будет ошибок вида "сложил число со строкой" и тп
>Вротенд и не должен быть сложнее туду-листа.
Он таким вполне себе может быть, правда эта сложность тут же польётся на бэк. Нечем утилизировать мощность сервера — берёшь и ебашишь всякие LiveView. Но вместо тонкого клиента получишь ту же кучу гемороя, но уже на бэке.
>которые мало того не упрощают
В туду листе — да. Но и не тащи их туда.
>так еще и производительность в нулину убивают
Ну ктож виноват что всем (и юзерам и бизнесу) глубоко похую? Никто тебе не мешает и на жопаскрипте написать нормальный по перформансу фронт — это просто никому не нужно, нужны фичи хуяк хуяк продукшон.
Когда юзеры начнут голосовать валютой за перформанс — всё полетит, а пока — самай.
Так челы вроде тебя и создали такую ауру вокруг фронта, что он превратился во вротенд, где все вкатыши считают что уже даже язык знать не надо, ведь сложнее туду листа ничего писать не придётся — сиди да крась кнопки.
> Вот как раз сервера большую часть времени занимаются перекладыванием джейсонов, аж целые книги написали и паттерны перекладывания придумали для всего этого. Даже всякие postgresql научились перекладывать джейсоны.
Если у тебя сервер эту круд обычный. Но похуй, не буду тут спорить.
> Конечно же для туду-листа никакие абстракции не нужны. Но мы говорим про фронтэнд.
Все равно нет смысла. Покажите мне проект с ебанистикой уровня джавамирка на фронте?
>Плюс есть сервера на ноде
Ну охуеть, пусть там остаются, нахуя мне это говно в половину вакух вставили блядь?
> В туду листе — да. Но и не тащи их туда.
Все либы которые разбирал с такими усложнениями - просто бессмысленное говнище, просто делаешь нормальную архитектуру и никакая сложности и никакие конструкторы вложенные 12 раз не понадобятся. Ебать кста это мерзко выглядит, надавно разбирал подобный пример, блевал пиздец насколько это ужасно.
Это как ecs и oop в гейдебе. Просто нормально пишешь на ecs и всё нормально сразу становится, без ооп-дрисни на несколько страниц.
> Ну ктож виноват что всем (и юзерам и бизнесу) глубоко похую
Хорошо мне, пишу падсибя!
> Когда юзеры начнут голосовать валютой за перформанс
Они голосуют, просто перформансе исчезающе мало и никто не знает как работать с этим. нужно идти на масссрынок с соответствующими продуктами и соответсвующим маркетингом
>>30880
Ну это же жс, его действительно знать не нужно. Просто пишешь, как срёшь в треде, и всё.
Главное архитектура, функциинальщина и алгоритмы. Вот тут да, подумывать нужно серьезно так, все эти стейты, реактивности, асинхронные вызовы, вебворкеры, обсерверы, эмиттеры ууубляд. Обосраться можно. Но в задачи джуна это не входит, ему дали апи и какие функции он должен высрать на выходе - он пишет под это апи своё говно.
>Просто нормально пишешь на ecs и всё нормально сразу становится
И чем же использование ECS в каких нибудь мобильных гиперказуальных залупах/новеллах/итд отличается от такого же оверинжиниринга на фронте? Вротенд и гейдев кстати кое чем похожи — и туда и туда активнее всего идут вкатыши, считающие что
>Ну это же жс, его действительно знать не нужно. Просто пишешь, как срёшь в треде, и всё.
и имеем что имеем.
>просто перформансе исчезающе мало и никто не знает как работать с этим.
С чем работать? Не перерендеривать всю страницу чтобы поменять одно поле? Ну вкатыши "нинужна" действительно не знают, но ты же поддерживаешь такой подход, в чём суть-то?
>нужно идти на масссрынок с соответствующими продуктами и соответсвующим маркетингом
На срынок, фантазёр. Юзеру не похуй на то, что в одном сервисе будет цена на 3$ ниже чем в другом, а не то, что браузер будет рендерить страницу 0.003 секунды вместо 3.
Эта тенденция даже до ААА-йоб в гейдеве дошла — каждый второй релиз такой лютый пиздец, как в браузере открыл игоря, лол. Правда там поднимается шитшторм и проект либо дропают распуская всех на мороз, либо добивают хоть до чего-то вменяемого, а в вебе всем похуй.
Linaria топ. Еще некоторые перекатились на Stitches.
двачую вопрос
бложек и статьи Халила Стемлера.
Он там прочитает как дядя Боб с сынулей создавал аналог википедии и вместо БД хранил данные в текствых файлах и как это круто (создавать что-то с сынулей). А еще прочитает, что ФП нужно для контроля воздействия на переменную при распараллеливании программ.
>>30970
Читай Халила если нужны практические навыки по архитектуре на жс.
>Он там прочитает как дядя Боб с сынулей создавал аналог википедии и вместо БД хранил данные в текствых файлах и как это круто (создавать что-то с сынулей). А еще прочитает, что ФП нужно для контроля воздействия на переменную при распараллеливании программ.
Нит. Главное, что он вынесет - это слоеность и dependency rule. Собственно, вокруг этого и строится практически любой архитектурный паттерн.
Если код нормальный, то почему нет. Ты же ради того, чтобы все работало, ебешься, а не ради количества строк.
Da
> И чем же использование ECS в каких нибудь мобильных гиперказуальных залупах/новеллах/итд отличается от такого же оверинжиниринга на фронте?
Так-то даже в казуалках на ecs быстрее писать. Да и вообще гиперказуалки на самой простой реактивности нормас пердюхают.
> считающие что
Чел, все эти вставки на си, математическое обоснование функций, вот это я понимаю сложности. А что в js сложного? 99,999% людей даже реактивность свою не пишут тоже не пишу, я тупой для либы реактивности, там тоже математика нужна
> С чем работать?
С йобами же. Перформенс для чего нужен? Для создания йобы!
> в чём суть-то?
Не знаю, в конкуренции продуктом? В конкуренции кто большую йобу напишет?
> На срынок, фантазёр. Юзеру не похуй на то, что в одном сервисе будет цена на 3$ ниже чем в другом, а не то, что браузер будет рендерить страницу 0.003 секунды вместо 3.
Приложение не то. Хотя всякое возможно.
>>30904
> никому не помогло.
Помогло, чому же. Просто малоизвестны примеры. Фейсбук вроде тоже дрочит на эффективность, но только немношк. Да и гугл таблицы на калвас переписали.
>>30970
Хз, не знаю. Лучше об этом вообще не думать, пока не напишешь десяток-другой приложух и не прочитаешь десяток-другой статей и всякого говна и книг.
В треде про Халила написали, он вроде годно пишет про функциональное программирование и простоту.
> https://khalilstemmler.com/articles/software-design-architecture/feature-driven/
> From "Domain Modeling Made Functional" by Scott Wlaschin - highly recommended reading.
Ух, а какой код-то в пример он привёл, красиво епта! Точно нужно.
В этом есть правда. Учи не учи тайпскрипт, а ждуна только на говно проекты возьмут, а они как правило не на тайпскрипте...
Я блядь в своем поиске работы настолько преисполнился, что я как будто уже сто триллионов лет ищу работу на триллионах проектах, мне этот рынок абсолютно понятен, я уже ничего не ищу, кроме гармонии
Ща прибежит риактер, который не писал ничего сложнее калькулатора займов. Но это было самое сложное приложение за его длинную жизнь 21 год, поэтому он верит...
На самом деле в природе чего только не встречается. Ты можешь найти калькулятор на ангуляре и жирную ерп целиком на жиквери
МАТЕРИАЛ ДЕЗИГН
Дизайнеров в айти набежало не меньше чем фронтендо-макак.
Потому что все развивается, а что тебе однажды понравилось, всегда тобой будет считаться единственно нормальным.
Я изучил JS+ES6, TS, React/Redux, очевидные HTML/CSS, знаю SCSS. В портфолио на гитхабе есть: чятик на TS+React+SCSS,
Таймер на React + SCSS,
также сделал тестовое от Aviasales по приколу (что тут в треде кидали давненько),
3 сверстанных сайтика (которые обновлял по мере увеличения знаний),
есть небольшой сайт - рандомайзер фраз (фишка в том, что фразы можно добавлять самому), но он без авторизации какой-либо на чистом JS (это был мой первый пет-проектик)
Ща вот планирую сделать мувилист на TS+React/Redux с использованием Material UI.
После мувилиста думаете стоит начинать пробовать искать работу? Как думаете сколько это займет или это чистый рандом в большинстве случаев?
> Ванильный жс
Да.
> алгоритмы надрочил
Наверное нет, если не совсем понимаю о чем ты. Решал различные задачки с Codewars, Leetcode, поигрывал в WarriorJS
> попку накачал
и побрил
>>31265
А я собственно и не против, кроме хх, какие еще площадки по поиску работы стоят внимания? (кроме очевидных Linkedin, Хабработа)
Я из ДС, если ты тоже или кто-то еще, то можете подсказать что за городские сайты конкретно стоит мониторить.
Мне также интересно услышать ваш опыт, анончики!
>Наверное нет, если не совсем понимаю о чем ты. Решал различные задачки с Codewars, Leetcode, поигрывал в WarriorJS
Ну стандарт cs, алгоритмы и структуры данных. Совсем базу надо знать даже фронту.
>и побрил
Я б может пособесил, но под пивас лениво.
> Ну стандарт cs, алгоритмы и структуры данных. Совсем базу надо знать даже фронту.
Слушай, раз уж такая тема зашла. Может дашь хорошие источники, где можно об этом почитать? Конечно, есть гугл и я могу всё найти, но часто от анона была хорошая годнота, которая помогала понять всё и довольно быстро.
Отлично, спасибо большое!
>Как думаете сколько это займет или это чистый рандом в большинстве случаев?
Думаю что займет дохуя, т.к. например меня взяли через 3 месяца поиска, чисто потому, что мой пет-проект не был дефолтным мувисерчером
Я под баклой собесился, за один день 3 собеса прошел, все удачно, лол.
>Может сначала какую-нибудь стажировку поискать?
Специально выискивать нет, но если есть вариант, то хули нет.
>А на какую зп стоит рассчитывать джуну?
30-70к
Сколько по времени это всё учил и как, я имею в виду может на курсы ходил какие - то?
Не будь омежкой, завтра с утра уже обновляй резюме и рассылай по всем релевантным вакансиям, даже если там немного не проходишь, т.е. одну технологию не знаешь. Всегда все в процессе можно подтянуть.
Ну а проекты не бросай делать, одно другому не мешает.
Ты меня мотивируешь, анон. Но у меня стойкое ощущение, что нужно еще подучиться, чтобы прям быть уверенным в своих технологиях + подготовить ответы на вопросы на собес.
А вот еще вопрос возник. Чаще собесы проводят на удаленке или в офисе? Мне бы просто в офисе это всё проходить, т.к. в моём месте обитания вечный балаган.
Я себе так мозги еб пару месяцев, но я смотрю и читаю истории тех, кто чуть ли не после 6-часового ролика в ютубе от сраного Минина вкатываются на фронтов и решил чутка поприставать к джунам в одном чатике, как они устроились, чего не хватало по требованиям и т.д. И я решил сам, что пора перестать титьки мять, я обновляю резюме, дописывая, что там освоил, и в гитхабе у меня бардак, там проекты по курсам, собственные проекты, тестовые проекты, но я все это приведу в порядок, но я не откладываю поиск, пока не выучу %хуйнянейм% или пока не оформлю 10 проектов в портфолио лол я что ебач столько пет-проектов делать
А что думаешь вот. Я пили небольшое тестовое по Redux и вот тестовое от Aviasales. Стоит их оставлять в гитхабе или нет? У меня в принципе довольно чистый гитхаб, онли мои проектики, но вот есть всякие такие же тестовые задания, где я изучил теорию технологии и пробую её на практике в микро-проектике базовом.
>мой пет-проект не был дефолтным мувисерчером
А что за проект у тебя был? Не хочу засирать тудусерчерами гитхубы, хочу сделать что-то более крутое, но фантазий хватает только на интернет магазин.
Мимо
>Ну я смотрю мнению разделяются.
Это чистое везение. Есть немало мест, где на твой гитхаб вообще поебать всем. Лучше начинай искать работу прямо сейчас.
веб-интерфейс для telegra.ph с поиском статей, отображением, сохранением в закладки, текстовым редактором, постингом статей, регой для авторов и менеджментом статей
ну с текстовым редактором пришлось заебаться конкретно, у меня было желание скопировать ux их редактора
Ангуляр, очевидно.
Искал меньше трех недель. Правда к тому моменту у меня были знания двух ЯП (шарп и жс) + я напиздел про 4 года опыта. Получил 3 оффера, один на сеньку, два на мидла. Пошел на мидла, так как без коммерческого опыта идти сразу на сеньку как то пиздец стремно было. Ну и не прогадал, через 1.5 года на текущей повысили до сеньки.
> enum это аналог объекта/массива
Нет, это хуйня, которая может принимать только значения из списка.
Можно ли съебать к белым людям без профвышки и бэка? Смотрел ваки в релокейт и там все больше фуллстака с нодой или шарпом.
>Так-то даже в казуалках на ecs быстрее писать.
Если там 3 объекта на сцене — нет, блять, не быстрее.
>Да и вообще гиперказуалки на самой простой реактивности нормас пердюхают.
К ecs это как относится?
>тоже не пишу, я тупой для либы реактивности
>там тоже математика нужна
Действительно тупой, лол.
>Фейсбук вроде тоже дрочит на эффективность, но только немношк.
Эффективность фейсбука меряется в конверсии трафика в $, а не скорости открытия страниц. Они скорее будут ебашить 500 а/б тестов одномоментно, чем что-то оптимизировать. У них даже нативные приложения — и то говно. Хуже только у твиттера, там натив хуже веба — но всем ок.
А если не секрет - какие задачи были в компании, куда тебя взяли? Просто у меня в голове немного не укладывается, что я вот с нуля тут учился сам собой, вроде придрочился, да. И тут я на собесе важно достаю свой огромный хуй и говорю, что у меня вообще-то дохуя лет опыта и я мидл ебать.
Даже если они поверят, потом на работе я же сразу обосрусь ну или нет, т.к. в действительности опыта нет.
Но про этот я тоже думаю буду пиздеть, т.к. у большинства вроде как если опыта нет, то сразу отсев идёт.
> Если там 3 объекта на сцене — нет, блять, не быстрее.
Это не гиперказуалки тогда, а хуйня какая-то.
> К ecs это как относится?
Это к тому как обычно пердолят гиперказуалки.
> Действительно тупой, лол.
Кек, разбери хоть одну либу реактивности и там будет матан, а в некоторых даже интегралы.
> Эффективность фейсбука меряется в конверсии трафика в $, а не скорости открытия страниц
Они отполировали среакт до уровня в котором он достаточно быстр так-то. А мог бы и по 3 секунды открываться.
https://jsfiddle.net/q7v0tj3w/
Так в JS же onclick юзается, а .click в jQuery.
Он тебе белым по красному говорит, почему.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement#methods
https://developer.mozilla.org/en-US/docs/Web/API/SVGElement#methods
Ясно, parentNode возвращает тип Element, у которого нет метода click, а как превратить Element в HTMLElement?
Всё, не понадобилось превращать, сделал симуляцию так.
на VUE есть где-то такйо компонент чтобы создать Customer Journey, как на пик
Спсибо за ответ!
ой оказывается это не включили в superset.
Ну вот есть echarts :
https://echarts.apache.org/examples/en/#chart-type-treemap
Тащемта, где-то пол года назад инспектил их приложение на джейлбрейкнутом айос девайсе — реактнативовских проксей и в иерархии и прочей хуиты не видел, хз как на андроиде.
Да и фронт у них уёбский, нормально юзается почему-то только с мобильного.
>Это не гиперказуалки тогда, а хуйня какая-то.
Дефайн гиперказуалки. С какого количества объектов на сцене начинаются и заканчиваются, кекус.
>Кек, разбери хоть одну либу реактивности и там будет матан, а в некоторых даже интегралы.
Что ты несёшь, поридж? Ебанат? Ебанат.
Пруфай давай свои интегралы.
>Они отполировали среакт до уровня в котором он достаточно быстр так-то.
Поверх кучи костылей они выдавили свою кучу, чтобы максимально понизить порог входа, вместо инвестиции в образование. Получили лагающий интернет от самого фейсбука до ооо "еда и хуета".
>А мог бы и по 3 секунды открываться.
Достойный аргумент.
Чем тебе не нравится жс? Давай конкретику. Если типы хочешь описывать, то есть тайпскрипт, с которым жс обратно совмещен.
От IE11 до сих пор избавиться не можем, а ты про JS, лол
>Неужели так трудно отправить ублюдочный JS на свалку и заменить его нормальным языком, хотя бы дартом?
Какие проблемы это решит?
>Это же не кресты, на котором написаны триллионы строк кода
напомни, ан чем написаны движки JS?
>хотя бы дартом?
Т.е. таким же ублюдочным высером?
Который при этом уже успел обрасти говном из-за легаси, хотя и не взлетел...
Тащемта, тебе завезли васм — бери и пиши на чём хочешь. Хоть на дарте высирай произведения.
О его не осилил.
Я немного выше давал полный список различий типа (алиаса) и интерфейса, скорее всего тебе. Но судя по твоему вопросы ты даже не понимаешь зачем тайпскрипт нужен.
Основное назначение тайпскрипта - это тайпчекинг во время компиляции и статического анализа в IDE
Профиты
1) Уменьшение количества необходимых тестов, а так же тесты ты не напишешь для локального скоупа внутри метотодов. Это необходимо для рефакторинга без головной боли. Да что там говорить тесты чаше оставляют на потом, а рефакторить нужно сегодня, ибо кабан новых задач завез. Да и на тесты нужно много кода, на типизацию значительно меньше доп кода.
2) Архитектура требует инверсии зависимостей (и инекции). Статический анализатор должен видеть что ты суешь в конструктор или метод. Чтобы IDE указывала на несовместимость типов. Так же сборка IoC может основываться на типах (в жс абстрактных классах)
3) Подсказки IDE методов и типов аргументов.
Интерфейс или тип задают ограничение на тип переменной или параметра метода, при компиляции. Во время компиляции из определений выводятся типы и сверяются с тем что фактически передается и присваивается.
Энум нужен чтобы типизировать набор значений переменной именноваными константами. Можно было бы так let a: 1 | 2| 3
но тогда у тебя в годе были бы магические числа
a = 2
c энумом ты пишешь а = MyCoolValues.TWO это повышает документируемость кода и помещает константы в неймспейс.
>нормальным языком
Словосочетание, которым детектится законченный долбоёб-дилетант.
Неужели тебе так сложно стать специалистом прежде, чем пытаться высирать свои идиотские мнения?
Тайпскрипт - это же просто костыль, приклеенный к JS, заметающий под ковер все его косяки. На нем конечно писать лучше, но прямо приятным языком его не назвать, потому что замечая очередное странное решение тайпскрипта, понимаешь, что это просто было нужно, чтобы не ломать совместимость с JS. Новый язык, который создавался бы без оглядки на JS, был бы намного логичней спректирован.
>Новый язык, который создавался бы без оглядки на JS, был бы намного логичней спректирован.
При этом бы ещё веб не сломать...
>Какие проблемы это решит?
От крестов тоже все плюются. Придумывают новые языки, java, С#, go и т.д., которые хоть и не убивают кресты, но отбирают у него куски, и многие задачи уже предпочтут решать не на крестах. Хотя казалось бы можно было задать тот же вопрос, какие проблемы все эти языки рашат?
>напомни, ан чем написаны движки JS?
Какое отношение язык движка JS имеет к изначальному вопросу?
https://www.npmjs.com/package/average-temperature-calculator
Потом окажется что на жс ты писал что-то компактное, что можно в голове удержать целиком или вообще лаба2 Или ты писал это с нуля в одно рыльце...
Ответь на мой вопрос. Какие проблемы решит замена JS на дарт?
>Какое отношение язык движка JS имеет к изначальному вопросу?
Ты пишешь:
>Это же не кресты, на котором написаны триллионы строк кода, и взять и переписать все это добро на новом языке не возможно.
Так вот, все движки, их ABI написаны на крестах. Там сотни тысяч, нет, даже миллионы строк, которые никто не будет переписывать потому, что какой-то инцел-вкатун-шизик с двочей скозал
А потом на НПМ новую версию загружать, получается?
Я 3й год профессионально реакт сосу. Пока что никакой конкретики не было как раз от недовольных жс.
И как это противоречит тому что я сказал? Вариантов полно
Тянешь проект один
Работаешь на одном месте 100 лет
Пишешь простые компактные вещи на реакте как калькуляторы займов, инфографику, календари, крозины товаров. То что сейчас называют микрофронтендом. Может ты как плюсовик видеобработку пишешь на беке, а на фронтенде жиденький проект чтобы окошко с видеопотоком показать.
То что JS считают проблемой, доказывает само наличие дарта, кофескрипта, тайпскрипта. На JS писать не хотят, проекты переписывают целиком на TS, тот же angular. И вот дарт провалился, а через год может TS станет не модным и появится какой-нибудь хуйскрипт, и что опять все переписывать будут?
>Интерфейс или тип задают ограничение на тип
В чем их существенное отличие? Когда лучше использовать первый, а когда второй?
>c энумом ты пишешь а = MyCoolValues.TWO
Почему нельзя создать объект и запретить изменение two в дескрипторе?
>а через год может TS станет не модным
Ну и станет, дальше то что? JS тут причем?
>опять все переписывать будут?
Ты хуйню какую-то несешь. Вот стали бы использовать {{ языкНейм }}через год появился бы Type{{языкНейм}} и все бы на него перекатились. Ты вообще сколько лет в коммерческой разработке, шиз? Иди попей галоперидол и иди в макдак кассиром батрачить за 20к для оплаты платежа по кредиту за курсы скиллбокса.
>То что JS считают проблемой
Есть язык, который не считают проблемой?
Из реально используемых в новых проектах.
> В чем
В том >>31732
>Почему
Чтобы посмотреть во что компилится используй https://www.typescriptlang.org/play
есть еще const enum который во время компиляции просто превращается в подстановку значений
энум сделан еще затем чтобы соответствовать сишному бекграунду у прогеров. сишка же остается "международным" языком тн лингва-франка
Да при чем тут ложечка, ноль информации в твоих каментах.
Такое ощущение что ты перед кем-то выйобуешься.
Передо мной не нужно, для меня ты никто.
Какая может быть информация в каментах? Статью тебе здесь написать? Вот гулил и читал это давно https://medium.com/@martin_hotell/interface-vs-type-alias-in-typescript-2-7-2a8f1777af4c
Кто нибудь может объяснить что это? Дизайн вырви глаз, юзабилити никакое. Не понял вообще о чем сайт
>RTFM
>По делу есть че?
Абасаться https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#differences-between-type-aliases-and-interfaces
Еще ложечку за бабушку
https://www.typescriptlang.org/play?#code/JYOwLgpgTgZghgYwgAgILIN4Chm+XALmQGcwpQBzAbiwF8stRJZEV1s9kAjI08kCnQYAbCGHxF0AXkyFkAcjjyANNyLyu85LWQMm0eEmQAhTDjwIiIAK4BbLtCEMwATwAOKAMLIZ6AGQmDAjCcMTEyAAiyMC2bqK2EODh3hwWAPYgfNYIYGlQABRu1lzCwAgSJGSUqkUlZWqV-BQ1xaXllsg29tAAlGbmuPT0WK4eyACiPmjIAD6BWAD0C8iAgiCAPCCAfCCAQiCAAiCArCBbgDIgyIC8IIAMIMhbe4BcICtbyBuAEiCAHCCAjCDXz1jBoeEAYtGxeKJMDhSbYYaJOzIADiZk4AHkAHLjZQDZAAFQA6vCnAgMqRkJDbMgABJwvBIlForE42hAA
Так у меня опыт то был, но не коммерческий. Про задачи не скажу, так как деанон. Но ничего особенного в них не было + никто не будет тебя гнать, все 3 месяца испытательного мне давали легкие задачи и я знакомился с архитектурой проекта. Боялся только за гит и джиру, но ими пользоваться не сложно, всё понятно и без опыта. Самым сложным оказалось написание юнит и интеграционных тестов, так как до этого их не писал, но облегчает то что уже есть примеры под рукой и можно по аналогии делать, разбираясь по ходу.
Главное разбираться в паттернах и принципах проектирования, это то что отличает мидла от джуна.
А сколько платили на испытательном?
Ну тут конечно вряд ли я миддла потяну, т.к. у меня опыт только пет-проектов своих же и чуть-чуть фриланса (самые простые правки сайтов или какой-нибудь легчайший скриптик написать за копейки)
Когда у меня такое было я просто шел в парк гулять, но это было летом. Зимой хз, можно на горнолыжный склон уебать, например
>я просто морально не могу себе позволить совсем уж забить хуй и пойти поиграть во что-то
Слабак.
Да тут проблема не в том, каким развлечением себя занять, а типа должен ли я переживать по этому поводу? Или такие ситуации это норм и кодер не виноват?
Переживать надо, если у тебя в проекте говнокодие, даже если не ты его высрал. А если манагеры лохи, то что беспокоиться-то
Читаю туториал мелкомягких по ноде
https://docs.microsoft.com/en-us/learn/modules/node-web-routes/5-exercise-read-write
Не очень понимаю, как точно работает программа, когда запускаются два js файла. Есть какой-то способ для дебага двух файлов одновременно, чтобы не писать сюда тысячу тупых вопросов?
>Какие
Хуие. Разобрался. Вместо того, чтобы запускать файл через консоль, нужно было запустить его через дебаггер.
во, хороший способ делать кампаунд в vscode
https://code.visualstudio.com/Docs/editor/debugging#_multitarget-debugging
Кодить и оттачивать навыки
Столько же сколько и после - 200к до налогов. Испытательный это не про "платим меньше", а про "можем уволить по воле левой пятки". После испытательного, если компания нормальная, уволить очень сложно.
Я вообще не представляю, кто должен делать верстку если не фронтэндер? Тем более что верстка делается очень быстро, мне трудно представить себе проект, где кодер и верстальщик это 2 разных человека.
С юзерскриптом та же проблема. Он меняет onsubmit функцию, но когда нажимаю кнопку, то страничка всё равно релоудиться до срабатывая этой функции. Что делать?
>element.addeventListener('click', (event)=> {})
Ок. Попробую это завтра. Спасибо. А почему онклик плохо?
Блять как написать функциональные компоненты как в реакте на чистом JS? Очень надо, не хочу на классах писать
export function Component({ props, ...attributes }) {
const element = document.createElement("div");
Object.entries(attributes).forEach(([attribute, value]) => {
element[attribute] = value;
})
return element;
}
Props в данном случае - любой аргумент, не являющийся ключом интерфейса корневого элемента.
Скажите, есть что-нибудь подобное в уже готовом виде?
Манюнь, в любую нормальную либу vdom зайди, да хоть в среакт тот же, найдешь там и интегралы и различные балансеры, у которых в доках математика.
Ты просто ньюфажина и не в курсе, газани книжки читать.
Пишешь эндпоинт, который получает джейсон. Парсишь и валидируешь его, а потом отправляешь результат в баш.
Ну а если либа, то npm install @zaebisjs/bash-shell.
> Манюнь
Я вижу что ты вкатыш, можешь не напоминать.
>в любую нормальную либу vdom зайди
вкатыш увидел МАТАН в описании какого-то алгоритма диффа
@
нихуя не понял — ни что это ни зачем
@
НО ВСЕ СУРЬЁЗНЫЕ ЛИБЫ ТРЕБУЮТ МАТАН СЛЫШАТЕ!1
Давай пруфай обязательность понимания интегралов кекус для реализации рх-а.
Реакт, бутстрап, больш ничего нет... в чем трабл?
В таком случае надо оборачивать меню и нижний элемент в еще один div?
Я сейчас пробую так делать и у меня в других местах верстка сдвигается из-за этого.
Браузер устал
Ну вроде нормальный вариант.
А как теперь сделать, чтобы следующий элемент не прилипал к этому меню, а то margin-top на нем вообще не действует. Надо чтобы было небольшое расстояние между ними.
Короче, разобрался.
твое время оплачивается? если нет, то стоит беспокоиться. А иначе похуй, че за тупой вопрос?
Смотри профайл в DevTools или pagespeed.web.dev
Зачем спрашиваю если гуглится за 5 секунд, alt-shift-up/down
Помогите вкатуну! в ньюфаг-треде глушняк пока и постоянный вайп от зеленых пидоров
Вроде тут где-то ссыль была на сайт с уроками для ньюфагов, где буквально первым же заданием было что-то вроде "введите в окошке print 'hello world' и поздравляем с первым вашим кодом".
Пока сёрфинг через браузер актуален, будет актуален и js. Когда лет через 20 будет 3D инет в голограммах на всю комнату, тогда да, js в печь.
Я думал над модалкой и таблицей сделать сверху родителя и там создать стейт который кидать, когда элемент добавлен на сервер, но тогда придется все что выше таблицы тоже ререндерить
А, ну да. Если подключать модулями, такой ебли не будет.
В респонсе запроса добавления в таблицу возвращай новый стейт таблицы и обновляй её, используя данные из респонса.
И как заставить это реагировать на пропсы? А как композицию компонентов делать?
Хочется...
>Ты задаешь вопрос, на который сам же ответил постом выше
С onclick такого не возникает и страничка не релоудиться пока функция не завершается.
>Т.е. ты таким способом можешь повесить только один абработчик, а через addEventListener - неограниченное.
А если мне и не нужны несколько обработчиков, то можно и не менять? А то сейчас всё вроде норм работает. Или какие-нибудь подводные потом могут вылезти?
>С onclick такого не возникает и страничка не релоудиться пока функция не завершается.
С addeventlistener тоже, поток блокируется.
>А если мне и не нужны несколько обработчиков, то можно и не менять?
А если разрабам понадобится навесить свой обработчик на Onclick, то твой может сломать логику работы.
3 года я неторопливо вкатывался.
сначала учил пхп, потом джаву, потом ноду
А если бы сразу, то за год бы вкатился
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
System.out.println("Введите значение x, a");
double x = readNum("Enter x: ");
double a = readNum("Enter a: ");
double b;
int chisl = 1;
int znamenat = 1;
for (int i = 1; i <= 32; i++) {
a = (x - 2 i);
chisl = a;
}
for (int i = 1; i <= 31; i++) {
if (i == 1) {
b = (x - i);
} else{
b = (x - 3 i);
znamenat = b;
}
final var y = chisl / znamenat;
System.out.println(y);
}
final var y = (((((x - a) x - a) x - a) x - a) x - a) * x - a;
System.out.println(y);
}
private static double readNum(String text) {
System.out.print(text);
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
if (num <= 0) {
System.out.println("Error");
}
return num;
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
System.out.println("Введите значение x, a");
double x = readNum("Enter x: ");
double a = readNum("Enter a: ");
double b;
int chisl = 1;
int znamenat = 1;
for (int i = 1; i <= 32; i++) {
a = (x - 2 i);
chisl = a;
}
for (int i = 1; i <= 31; i++) {
if (i == 1) {
b = (x - i);
} else{
b = (x - 3 i);
znamenat = b;
}
final var y = chisl / znamenat;
System.out.println(y);
}
final var y = (((((x - a) x - a) x - a) x - a) x - a) * x - a;
System.out.println(y);
}
private static double readNum(String text) {
System.out.print(text);
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
if (num <= 0) {
System.out.println("Error");
}
return num;
}
}
Мы, конечно, пишем скрипты на джаве, но это другое.
Проблевался с нейминга переменных, перед отправкой куда-то кроме двача ренейм сделай.
да для себя сделал,чтобы не путаться,обязательно изменю
Может, тебе для начпла программировать научица, если у тебя такие вопросы возникают?
>И как заставить это реагировать на пропсы?
Никак, пиши свою реализацию реактивности или адаптируй rxjs/redux под свои нужды.
>А как композицию компонентов делать?
Пишешь компонент и вызываешь его внутри другого компонента.
В общем как это делается так, чтобы были загружены все файлы без папки, но при этом все работало нормально?
>сап хакеры, снова я, есть вот такой код, как загрузить его на гитлаб, чтобы файлы отображались в основноей папке, без src.
Нахуя?
Программист, который мне дает задачи, сказал, что там не должно быть этой папки, так как это имитация сборки приложения
В смысле вызывать? Если возвращать строку из компонента, то получится залупа, нельзя будет перерендерить лишь одну часть, только полностью приложение, и все листенеры проебутся ещё
Если возвращать готовые ноды, то куда вставлять ноды-потомки? Append child вставит просто в конец, а надо в конкретное место и чтобы это все нормально перерендеривалось
Реактивность реализовать легко через прокси или defineproperty, проблема с логикой ререндера
Если высрать свой virtual dom, то я хуй знает опять, как определить, где и какое изменение в реальном dom делать
Хочу глубокое понимание как оно там в ваших хуяктах работает
Я умею писать в консоли npx create-react-app, этого мало или что
Открыл репу, лучше бы не открывал
Что это вообще? Чем ты занимаешься? Зачем тебе скрипт билда который просто блядь копирует файлы из одной папки в другую?
Вот как звучит задание :
С помощью библиотеки https://github.com/calvinmetcalf/copyfiles написать npm-скрипт, который копирует содержимое папки src в dist, имитируя сборку приложения
Вот часть его сообщения: кроме того это уже собранное приложение, там не должно быть папки src
Тип я то откуда знаю должно быть или нет, но мне сказали не должно быть, потому ищу решение. Это начальный этап обучения, чтобы в будущем устроиться джуном к ним в фирму
Долбоебизм какой то
Он хочет чтобы ты собрал приложение, удалил исходники и это говно в репозиторий засунул? Ну делай хули, rm rf в помощь
Лучше спроси чё он хочет вообще
По моему он просто тебя троллит чтобы у тебя бомбанул пердак и ему не пришлось бы тебя менторить
>По моему он просто тебя троллит чтобы у тебя бомбанул пердак и ему не пришлось бы тебя менторить
Лол, так я не один под его менторством, нахуя ему это?
>Лучше спроси чё он хочет вообще
На все вопросы по заданию ответ один - читать умеешь? в задании все описано
Ну тем более лол
Он хочет на острие технологий компонентики в реакте писать, а оставшиеся 80% времени на работе смотреть аниме и играть в ММОРПГ, а не менторить сотню трейни
Точно хочет тебя слить лал)
Обучение с ментором стоит денег, чел
Хочешь бесплатно - учись сам
Что за галера кстати? Загуглю порофлю
Скажу, только если сольют, а пока неохота деанониться, Двач же
И кстати тогда нахуя они сами затеяли менторство, если нихуя не помогают новичкам. Типа сама компания ищет новых специалистов и вся хуйня. какой смысл им это делать, если хотят слить
Компания хочет, ментор не хочет, тебе 14 или что)
Менторство это не когда на твои вопросы отвечают иди нахуй, читать умеешь?
Если не будешь делать vdom, то соси хуй и перерисовывай каждый изменившийся компонент с нуля.
Тогда вызов брошен, хуй я сольюсь!
сукпздц(
>В смысле вызывать?
В смысле вызываешь функцию Component() внутри другого Component и результат лепишь куда надо.
>и все листенеры проебутся ещё
Ну да, это тебе не реакт, который всё сам автоматически делегирует и демонтирует, тут надо тоже свой бойлеплейт с хэш-таблицами писать.
>Если возвращать строку из компонента
Какую строку? Возвращается дом элемент. А в дом он добавляется по желанию вызывающей функции. Уж в контексте компонента ты же знаешь, куда он вставляется.
>Если возвращать готовые ноды, то куда вставлять ноды-потомки? Append child вставит просто в конец, а надо в конкретное место и чтобы это все нормально перерендеривалось
У дома есть хуева туча методов и представлений для итерации по нему, так что проблемы вставить куда надо не будет.
>Хочу глубокое понимание как оно там в ваших хуяктах работает
1. Открываешь https://babeljs.io/repl
2. Вставляешь свой рякт компонент
3. Смотришь во что он компилируется
4. Заодно посмотри, что вообще вызывается в начале любого рякт-проекта, и все вопросы "как" отпадут
Так ты уже это сделал. В репы обычно не пихают результаты билдов. Кому надо - склонирует репу и сбилдит куда надо.
Можешь сбилдить и создать отдельную репу для результатов билда. Гитхабовские сайтики более-менее так и костылируются.
Да уже разобрался
Нет, типа популярен
Мне вс код впринципе нравится, но эта хрень с мерж конфликтами вымораживает
Я вообще через vimdiff мержу, похуй на такие мелочи.
Есть secretJWTKey на сервере, им подписываем токен, и выдаем. Клиент передает этот токен в заоловках, по тем роутам где нужно. В токене айди юзера, как payload. В protected роутах чекаем user id, и условно роль.
Это моё понимание на данный момент. Возникают вопросы - где хранить токен на клиенте. Пишут мол в http only куках. Безопасно ли?
Есть вариант с 2мя токенами, короткий и длинный(по времени). Подписаны разными ключами, короткий обновляется по ходу использования. Но если короткий закончился, а юзер не отослал refresh запрос(не сидел на сайте в момент истечения) то снова авторизовываться? вроде не удобно.
Поделитесь знанием или скинте статью годную, если есть.
Идея до безобразия простая - зашифровать в токене данные о пользователе и/или самом токене, а не хранить их в БД.
Это как бы ты выдал челу пропуск на иностранном языке, а в пропуске написано - этот чел пидор.
Спасибо, это я, кажется, уловил, но еще волнует вопрос безопасности - если храним в куках / localstorage есть риск что их украдут. И смогут воспользоваться - токен то подписан.
<li class="item">
<a>link</a>
</li>
если мне нужно чтобы ссылка была кликабельна и на паддинге тоже, мне padding из итема переносить в ссылку что ли? это будет неудобно так как другие <li> имеют такой же паддинг,но не являются ссылками.
Мб это как-то по нормальному можно сделать?
>Мб это как-то по нормальному можно сделать?
::before или ::after с position: absolute и inset: 0 у ссылки, position: relative у li
Вкатун, плиз. Иди читай стандарт.
Сработало, а насколько законно так relative для хака добавлять на сайте? Они же вроде куда-то параллельно выносятся и потом с этим траблы могут быть?
>асколько законно так relative для хака добавлять на сайте
Абсолютно законно. Почти все карточки-ссылки так делаются, например по памяти: деливери клаб, коинмаркеткап и еще дохуя ресурсов.
Прикольно, спасибо
>А если разрабам понадобится навесить свой обработчик на Onclick, то твой может сломать логику работы.
Убедил. Переделаю. Спасибо
В чём причина? В промисе или в стрелочной функции или в чём-то ещё?
И как это пофиксить, чтоб работало в IE? Проект на GatsbyJS.
>это будет неудобно так как другие <li> имеют такой же паддинг,но не являются ссылками.
Что за хуйню я читаю? Если другие элементы списка могут быть строками, то нахуй тебе заполнять элемент со ссылкой в весь элемент?
>И как это пофиксить, чтоб работало в IE?
А зачем? Чел, уже 2021 год, забудь про эти болезненные флешбеки из прошлого.
>забудь
Я бы с радостью, если б не кабанидзе.
Я уже второй день с этим ебусь, помогите посоны.
Ну пропусти через бабель со всеми полифилами, думаешь много народу помнит за настолько замшелую хуйню.
Какие библиотеки я обязательно должен знать? Lodash там, что ещё?
JQuery еще и желательно Ember
isarray, leftpad
react
Там не строки, но и не ссылки, кнопки там.
>нахуй тебе заполнять элемент со ссылкой в весь элемент?
Ну интуитивно как-то по уебански что ты только направляя на текст имеешь возможнось перейти куда-то
Vue, Svelte, Alpline позволяют внедрять js на уже работающий сайт, не переписывая всю систему целиком.
Тебе надо класс сделать для ссылко-кнопки, у которой будут стили и размеры кнопки, а поведение ссылки. А не растягивать её на весь родительский элемент. Плюс между кнопками должно быть некое расстояние, чтобы мисклики всяких бумеров и прочих паралитиков не приводили к нежелательному изменению состояния.
Сайта пока нет, его фронт нужно написать с минимальными усилием и знанием js (если возможно).
В общем я понял, что бабель не транспайлит сторонние библиотеки в синтаксис, который понимает IEшка. Что делать?
Слать кабана на хуй по-хорошему. Ну или импортируй сторонние либы прям в проект.
Сделай чтобы транспайлил
С минимальным усилием достаточно и шаблонного языка, который у твоему серверному поделию прилагается.
Попап имеет position sticky, думаю как-то с этим. Кто-то встречал подобное?
Серверный язык не даёт контроль состояния UI. Если на странице несколько менюшек, полей ввода с проверкой и переключателей, то это всё уже превращается в трудную задачу на голом js.
Зумера как же вы заебали! Учитесь использовать деепричастные обороты, не приходя в сознание.
Сейм, бамп вопросу.
Смотря куда. На маленких проектах твой код никто смотреть не будет, даже напротив, тесты, линтер, итп это твои заботы, а не кабана. Т.е. можно вкатиться даже без собеса.
Что ты там собрался контроллировать? Для валидации тебе достаточно по значениям ключей при сабмите пробежаться. А для "переключения" менюшек достаточно классом элемента манипулировать.
Удачи тебе писать меню с фильтрами для интернет-магазина на голом js. А хули там, просто классы меняешь и ключи проверяешь.
>Удачи тебе писать меню с фильтрами для интернет-магазина на голом js.
Что там писать? Или тебе для проставления инпутов нужно целый фреймворк подключать?
>А хули там, просто классы меняешь и ключи проверяешь.
Реактошвайномакаки совсем обезумели, им теперь для сортировки массивов нужно кучу либ ставить.
>бабель не транспайлит сторонние библиотеки в синтаксис, который понимает IEшка. Что делать?
Бабель транспилит все, что ты ему скармиваешь. Очевидно, что ты ему либу не скармливаешь, он её и не транспилит. Скармливает бабелю у тебя 99.(9)% webpack, поэтому тебе в его конфиге нужно в то место, где у тебя /node_modules/ добавить проверку на все модули из node.modules кроме нужного тебе.
Попал на реактумакаку с 0 лет реальной коммерческой разработки на фул удаленку 80к/месяц, образование пту + 9 классов. Так что да, очень даже реально.
Как собрался реализовывать изменение контента на остальной странице после выбора элемента в меню? По ссылке просто переходить?
>Как собрался реализовывать изменение контента на остальной странице после выбора элемента в меню?
По клику на кнопку "искать" ты хотел сказать? Угадай как.
>Угадай как.
Я тупой вкатун из курсов скиллбокса. Лучше ты мне расскажи, а то я ничего больше калькулятора на JS не могу сделать
Не слушай его, этот мудила ничего сложнее alert("соси хуй") ничего не программировал.
Судя по всему у нас тут jquery-макака, которая все проблемы решает применением классов. Ты, дурачок, хотя бы про state и Redux слышал? Сможешь реализовать историю состояний поиска, чтобы можно кнопками вперед/назад в браузере менять?
Как узнал?
>Судя по всему у нас тут jquery-макака, которая все проблемы решает применением классов.
Хуя как реактошимпанзе бомбануло. Пиздуй писать очередной экшн, экшн сам себя не напишет.
>Ты, дурачок, хотя бы про state и Redux слышал?
Редухомакакен совсем обезумел, ты контекст дискуссии видишь? Или без селектора сразу теряешься в ДОМ дереве?
>Сможешь реализовать историю состояний поиска, чтобы можно кнопками вперед/назад в браузере менять?
Ты умеешь передавать location в конструктор URL и потом читать параметры с него, которые уже запиханы в коллекцию ключ/значение? Нихуя ты софтваре архитектор. Лучше скажи нахуй эта фича нужна, если при правильной разметке форм текстовые поля сохраняют предыдущие данные? Страницы один хуй кэшируются в браузере, так что переход по кнопке вперед/назад будет дёргать состояние страницы с этим урлом. Но ты же пишешь СПА-говнецо, которое срало на разметку, на браузерный кэш, на стили и на встроенные браузерные фичи. Реактомакакены даже специальные пакеты высрали, чтобы формы больше 5 полей у них не тормозили.
Пиздец. На зло кондуктору отморожу уши. Просто из-за того, что не хочешь использовать нормальный инструмент, начинаешь поливать всех вокруг струёй жидкого не снимая при этом штанов.
мимо
>Ты умеешь передавать location в конструктор URL и потом читать параметры с него, которые уже запиханы в коллекцию ключ/значение?
А ты сделай, что бы контент страницы менялся после изменения URL
>Лучше скажи нахуй эта фича нужна, если при правильной разметке форм текстовые поля сохраняют предыдущие данные?
Современный веб это не только формы
>Страницы один хуй кэшируются в браузере, так что переход по кнопке вперед/назад будет дёргать состояние страницы с этим урлом.
Ну да, а что если у меня на страницы 20к узлов? Каждый раз пересобирать DOM?
>ты же пишешь СПА-говнецо, которое срало на разметку, на браузерный кэш
SSR решает все эти проблемы
>на стили
Каким образом?
и на встроенные браузерные фичи.
Как бы ты и на твоей любимой жикваре, и на реакте и на ангуляре вполне успешно можешь насрать на стандарт.
>Реактомакакены даже специальные пакеты высрали, чтобы формы больше 5 полей у них не тормозили.
А что высрано стандартом для поддержки компонентного подхода? Веб-компоненты, которые имеют бойлерплейта больше чем классовый компонент на реакте и срут на стили? <template>, который по сути хуй знает зачем создан, как будто я вместо template не могут создать <div hidden> и его клонить.
lodash, jquery (я серьезно), axios, уметь настраивать webpack, понимать как работают асинхронный импорт в оном.
cпасибо
Смотрел недавно интервью с его создателем(Dan Abramov) и он не смог привести хороших причин использовать Redux, кроме того, когда у вас есть команда, которая уже знает Redux.
Таки нужен он или встроенных в React средств хватает?
>встроенных в React средств хватает
даже не близко
>Таки нужен он
Да, в большинстве проектов он и используется
Достаточно посмотреть пробежаться по вакансиям, где есть реакт, там же есть редакс, а если нет редакса, есть мобикс, а где ни того, ни другого, подразумевается знание по умолчанию, ну типа какой долбач будет учить реакт и не учить стейт менеджер.
Хотя тут один называет всех редаксоблядков говнокодерами, не предлагая альтернативы.
Наверное того, что ты таким образом переписываешь редакс почти 1 в 1?
Центрального хранилища, которое хранит текущее состояние бизнеслогики которое можно удобно мониторить?
Салям, друзья. Норм в настоящее время ограничиться ECMAScript 5.1 ? Или это типа устаревшая версия? Как там по функционалу, по востребованности в индустрии и в целом по актуальности? Фреймворки совместимы?
Нашел на помойке старую книжку фленагана?
Не знаю, я вкатун, только-только классы посмотрел, я ими в ванильном жс пользовался, особо ничего нового.
>Норм в настоящее время ограничиться ECMAScript 5.1
Нет, не норм. Пили сразу под ESNext, транспилируя все в поддерживаемую целевыми браузерами через Babel. Если ты вкатываешься, то можешь даже не транспилировать, почти все фичи ESNext сразу появляются в актуальной стабильной версии хрома и лисы.
>Фреймворки совместимы?
Старые либы вроде jquery могут испытывать проблемы. А так, почти все либы пилятся в отрыве от какого-либо стандарта ES
По-моему, речь как раз-таки должна идти о новых либах, которые используют более новые фичи. Старые-то как раз совместимы, разве что речь о каких-то непофиксенных багах.
Да, ты прав. Тогда в целом да, сейчас большинство либ пилится под ES5 для поддержки IE11, но их количество существенно сокращается.
Создается продукт или проект, решающий какую-либо коммерческую или некоммерческую задачу
Делаю задачу на реакте, в условии сказано, что нужно реализовать компонент, который имеет следующие пропсы (пикрил)
И сразу первый вопрос:
1) Я же должен именно в родительском компоненте в return-e перечислить все эти пропсы?
….
return (
<ChildComponent propsOne={ } propsTwo={ } итд />
2) Значение value записывать в состояние родительского компонента?
3) Все эти функции прописываются в родительском компоненте, а затем в дочернем вызываются при необходимости?
Какие то беды, не уверен, что правильно понимаю построение логики.
Вижу примерно так:
В родительском компоненте в state устанавливаю value, создаю функции под onChange/Cancel/Submit;
В return все передаю в пропсах;
В дочернем компоненте тоже создаю state, скопировав его из родительского (те же значения, что и исходные value);
input принимает value из текущего стейта;
При изменении input вызывается onChange (только не понятно, изменяется ли стейт и какой?)
onSubmit применяет текущее значение введённое в input к элементу на странице, которые связан с ним;
onCancel сбрасывает к дефолтным значениям (то есть один из стейтов не изменяется все это время, и какой это стейт?)
Я пиздец запутался уже, первый раз такое делаю, голова не варит. Если кто то сумел понять, то поправьте, если что то не так. Или опишите, как вы видите и как правильно сделать, пожалуйста
>Я же должен именно в родительском компоненте в return-e перечислить все эти пропсы?
yes
>Значение value записывать в состояние родительского компонента?
no
>Все эти функции прописываются в родительском компоненте, а затем в дочернем вызываются при необходимости?
yes
>При изменении input вызывается onChange (только не понятно, изменяется ли стейт и какой?)
Меняет state, отвечающий за текущее значение инпута, очевидно же
>onCancel сбрасывает к дефолтным значениям (то есть один из стейтов не изменяется все это время, и какой это стейт?)
Почему не изменился? Ты когда стейт выше, который отвечает за текущее значение обнулишь, то у тебя изменится значение дочернего компонента. Получается двухсторонняя связь (ребенок изменяет стейт родителя и наобарот)
>Я пиздец запутался уже
Мб жопаскрипт это не твое?
Будет ли плюсом при трудоустройстве, если у меня будет опыт работы в команде, пускай и самый каличный? Есть вариант немного пошабашить над проектом, скидывать будут в основном всякую рутину и самое простое. Я вот думаю есть ли смысл тратить на это время или лучше дальше пилить тудусерчеры соло.
Не проще ли скрывать/показывать меню через CSS? Без изменения разметки. Если я правильно понял, что ты хочешь сделать. Просто вешать дополнительно класс menu-active, когда нужно показать меню.
У меня есть промис, который возвращает или объект, или строку "failed". К нему через then идет второй промис аналогичный.
Вопрос: могу ли я избежать ссанины с двумя проверками на "failed"? Использую lodash/fn.
Пока что выглядит так:
thru(promiseA().then(
result => result === "failed"? обработка ошибки : promiseB),
result => result ==="failed" ? обработка ошибки : возврат значения)
Но это очевидное говно, меня за нарушение DRY выебут. Можно ли как-то эту ссанину сократить? не бейте если долбоеб, только перевели на JS, до этого вообще на плюсах работал
Вместо того, чтобы возвращать "failed", выбросить исключение, поймать его в .catch() и там обработать?
Да, но плагин добавляет автодополнение.
https://marketplace.visualstudio.com/items?itemName=jpoissonnier.vscode-styled-components
>Syntax highlighting and IntelliSense for styled-components.
>>34691
Блин, и я только сейчас заметил:
>Styled Components has moved! Make sure you're downloading it from here: https://marketplace.visualstudio.com/items?itemName=styled-components.vscode-styled-components. The jpoissonnier.vscode-styled-components version will recieve no more updates.
Я не ту версию скачал... Та, которая по второй ссылке, работает... Но у неё 300 установок всего против миллиона на версии, которая уже не поддерживается!
Смысл есть, если тима нормальная, а не 2 протыкласника тоже без опыта. Гит выучишь, аджайл-хуйню, ci/cd, доступ по ssh, потом лиду мозги ебать не будешь.
Во время билда статичные страницы высираются в статичные html. Серверсайд на каждом запросе пересобирает странцу.
Еще проще говоря static создает кучу html файлов-страниц при билде, а ServerProps каждый раз будет заново фетчить данные и под каждый роут отдавать один html c изменными данными в шаблоне?
Не лучше тогда постоянно использовать ServerProps или тут только вопрос оптимизации?
>Не лучше тогда постоянно использовать ServerProps или тут только вопрос оптимизации?
Зависит от ситуации. Статичный html намного проще кэшировать, плюс для заранее сбилденных страничек не нужно делать запросов и ходить в бд/апи сервер.
Тут вопрос в том, знает ли сервер все данные для рендера страницы до запроса или нет.
Нельзя. Я бы так и сделал, но сигнатура промисов определена сверху и не мной, работаю с чем есть.
Выбрасывай исключение на failed, лови и обрабатывай наверху, не? Алсо, в 2к21 промисы это плохо и неправильно, прочитай про async-await, он удобнее.
Как тебя так жизнь-то помотала, с плюсов на жс? Как впечатления?
Как жизнь помотала - крупная зарубежная компания, работал в ней сначала на одном направлении, оно закрылось по достижению целей, предложили в другой отдел перейти. За 2 месяца пришлось выучить JS, React+Redux, TypeScript, Node.js и функционалочку. Работать начал но чувствую себя очень неуверенно.
Ощущения - в легком охуевании. Все непривычно и неудобно. Все сука новое. Раньше работал на MSVC - C++- ООП - Perforce - теперь VSC - JS - функциональное - Git.
Сам JS - прикольный язык, но рили, если писать не в функциональном - там до пизды возможности выстрелить себе в ногу. В C++ с этим как-то проще, как мне кажется, за счет общей простоты языка. зато уж если выстрелить в сях - то отрывает всю ногу нахуй, как вспомню как коллега в union решил хранить shared pointer так вздрогну.
>В C++ с этим как-то проще, как мне кажется, за счет общей простоты языка
Не существует ни одного программиста, кто бы знал плюсы целиком, особенно в части метапрограммирования. В то время, как вся спека жс ужимается до двух листов а4.
О какой простоте плюсов ты говоришь.?
>вся спека жс ужимается до двух листов а4.
два листа а4 это только ебанутые правила приведения типов
>В то время, как вся спека жс ужимается до двух листов а4.
Спека жс всего в 2 раза меньше спеки плюсов. А если к этому накинуть еще HTML и WEB api, то там будет текста больше, чем вся спека плюсов + STL+BOOST+asio и еще парочка десятков популярных либ
Ну тут скорее дело в том, что я к ним привык сильно. Я 5 лет на плюсах писал.
К компании я привязан. Там сложная система.
Если вкратце - я аспер, до 27 если уйду - то пойду в армию. В аспе я по договору с компанией являюсь консультантом от института. По сути работаю на басурман, они платят мне ЗП, но числюсь я сотрудником РАН.
Так и живем.
Ну и знания и навыки лишними не бывают.
Как считаешь с точки зрения плюсовика, у плюсов есть перспектива умереть в ближайшие пару десятков лет и уступить первенство главного системного языка C и Rust?
С прошедшим днем науки!
Да не трясись ты так! Все там будем.
А сколько стоит порешать с военкоматом? Тебе ещё небось зарплату урезанную платят, понимая в каком ты положении и пользуюсь тобой
Меньше $4к зп?
C - точно нет, он слишком устарел в том плане что ни в функционалку, ни в ООП нормально не может, но свою нишу имеет, будет иметь пока жив UNIX. Rust потыкать не удалось.
Сомневаюсь что он уступит сильно, язык очень много где применяется и там где работает - почти всегда лучше. Плюс залежи легаси на С++.
Если и отомрет - то очень нескоро.
> врёти брешите не бывает вашего матана в либах, нинужон!1
> это вы все вкатыши, а я знаю!
Шизик отрицающий матан и алгоритмы, ты ли это? Нахуй ты до сих пор в разделе серишь, дегенератище? Тебя недостаточно хуями кормят до сих пор?
>>35399
Да никогда плюсы не помрут, лол, о чем речь вообще. На плюсах каждый день пишется кода всё больше и больше и всё это идёт в легаси.
Плюсы помрут если выкатят новую программную архитектуру с новым языком программирования. Но там и пидераст и си вымрёт вместе, будет этакий черный леблядь. Возможно такое и произойдёт. А может и нет.
>Почему тогда колбек функция какого-нибудь метода типа addEventListener'a имеет доступ к переменным родительской функции?
Потому что ты в 99% случаев стрелочную анонимку передаёшь в колбэк, которая объявлена в контексте родительской функции.
Спасибо.
В общем. Поясните, что в ваших ЖС считается за правила хорошего кода и как правильно у вас декомпозировать компоненты.
Ну, давайте пример на пикчах.
Вот допустим пикча1. Как бы фронтендер ее разбивал на сущности? Вот лично я тут что вижу:
1. Топ-меню в котором свойства это просто коллекция элементов управления, которые инжектсятся снаружи(кнопка переключения состояния сайд-меню, имя, состояние логина).
2. Сайд-меню контейнер для элементов управления, плюс свойством передается viewModel с состояним показывать или нет и какой элемент сейчас выбран.
3. Лэйаут - еще один контейнер в котором VM - просто говорит какой из компонентов рисовать, самому лейауту опять же похуй
4. Футер, там в зафисимости от того нужно ли какие-то ссылкочки-переходы делать или это статика, если статика - можно сразу модель хуйнуть и захардкодить, если таки там будут какие-то ссылки-переходы, опять же энжектим MV для футера, там набор компонентов и все это вот.
Так вот. А как бы эту же хуйню декомпозировал настоящий JS-ер? А том не кажется что я из-за проф-деформации, когда нужно везде DI и чтоб если что все подменить да замокать можно было - усложняю и так реальный ЖСер делать не будет. По крайней мере когда я гуглил примеры RealWorldApplication - так никто обычно не делал.
Вот например, я хочу скрыть пикрил плашку на ютубе, как это мне сделать?
Можешь просто каким-нибудь uBlock клацнуть на эту менюшку и создать правило чтоб скрывалось.
через юблок/адблок скрой, либо в css для этого элемента пропиши display none, не знаю, зачем скрипты писать для этого
1. Общий лэйаут, в котором хэдер/мейн/футер. Если хэдер или футер становятся слишком комплексными, запихивать их в отдельные компоненты. Эту часть можно считать "глобальным" компонентом, в том смысле что он будет присутствовать на всех страницах.
2. В мейне твоя хуитка с меню и наполнением. Я правда хуй знает что за страсть у пердоликов мейн смещать с центра, чтобы запихнуть меню навигации. Что тебе мешает его показать в начале мейна? Это особенно уёбищно выглядит на главной странице. Приходит такой Васян на твой сайтик и первое, что он видит, так как читает слева-направо сверху-вниз - перечисление всех пунктов меню, которые ни о чём не говорят, так как он даже не знает, нахуй твой сайт нужен.
>Так вот. А как бы эту же хуйню декомпозировал настоящий JS-ер?
Настоящих JSеров не существует, это тебе не кресты. Смысл настоящего жса - говнякать скриптики на сайтики, с чем ты благополучно справляешься.
Почему все так любят кланяться крестовикам?
Как так сложилось, что успешный зумерок с мозгами после универа, отработав лет 5 на хороших проектах, получает зарплату больше, чем свитерный плюсовик с 30 годами опыта? Они не чувствуют себя пропущенными? Всю жизнь сосали, а теперь, когда большие деньги пришли в ойти, то и тут они не в лучшей позиции. Поэтому они и греют себя мантрами про швятые кресты и своей элитарностью?
не умеешь пользоваться поисковиком гугла или ютуба? там все гайды есть по твоей теме. а вот уже что будет непонятно после поиска, спрашивай здесь.
> Через юблок/адблок не выбирается эта плашка, там как то по хитрому сделано.
Букально юблоком только что
У меня почему то не выбирает. Но я все равно хотел бы сам такие скрипты уметь писать.
Я недавно поставил скрипт, который убирает из ленты ютуба просмотренные видео, очень понравилось. Теперь хочу сам написать скрипт, который удалит плашку и еще ютуб джем из ленты.
Интересно, как ты гуглил, что ничего не нашел.
Потому что я искал не просто как писать скрипт, а как написать скрипт, скрывающий элементы. Вот про скрытие элементов че то не нашел.
Ну ты более прошаренный в js и более грамотный поисковый запрос написал. Мне как раз это и нужно было, чтобы кто нибудь показал направление.
Я так понимаю, есть какой то метод у каждого элемента, который его скрывает? А как имя этого элемента получить?
Я просто перевел твой текст отсюда >>35679
>Научите плиз писать скрипты для Tampermonkey, чтобы скрывать ненужные элементы на страницах.
в очевидные запросы
>как писать скрипты tampermonkey
>как скрывать элементы tampermonkey
Никакой магии. Даже нейронка уже может сокращать тексты.
У элемента есть свойство видимости со значениями да/нет. Продолжай гуглить.
Вот один из методов, который скрывает просмотренные видео на главной ютуба.
function general()
{
if (window.location.href.indexOf('results?search_query=') <= 0 && window.location.href.indexOf('channel/') <= 0 && window.location.href.indexOf('www.youtube.com/feed/subscriptions') <= 0 && window.location.href.indexOf('www.youtube.com/watch?v=') <= 0 && window.location.href.indexOf('www.youtube.com/feed/history') <= 0 && window.location.href.indexOf('www.youtube.com/user/') <= 0 && window.location.href.indexOf('www.youtube.com/c/') <= 0)
{
$('#overlays.ytd-thumbnail#progress').parent().parent().parent().parent().parent().parent().parent().parent().hide();
}
};
Почему здесь так много parent через точку? Вот это вот parent().parent().parent().parent().parent().parent().parent().parent()
А ты пробовал гуглить "js parent" прежде чем задать вопрос? Вообще если хочешь писать скрипты сам, а не копипастить решения всяких Васянов, то нужно освоить язык JavaScript и его работу с DOM, вся инфа есть в шапке. Потому что элементы на странице вложены друг в друга, как матрешки, и это попытка добраться до внешней, для найденного элемента overlays.ytd-thumbnail#progres, матрешки. Не очень грамотная, наверняка там можно сделать через closest().
Не пробовал, т.к. плохо представляю, что гуглить.
То есть это васянство получается. А как правильно? И главный вопрос: как чел нашел вот этот вот '#overlays.ytd-thumbnail#progress'???
Посмотрел на ютубе.
>А как правильно?
Освоить язык JavaScript и его работу с DOM. А там уже поймёшь, как правильно.
И что он запрашивает? Элемент, в котором есть #overlays.ytd-thumbnail и #progress? #progress я вроде понимаю, это прогресс бар на просмотренных видосах, на непросмотренных его нет. А #overlays.ytd-thumbnail что значит?
Только помни когда была жикверя в моде за .parent().parent().parent().parent().parent().parent() кастрировали
Так я же вроде так и делаю или не?
Я хочу чтобы при клике на полоски меню, они менялись на крестик и выезжал навбар, а при повторном клике возвращалось меню и он пропадал.
Пока мне оптимальным кажется пикрил.
>>34868
А как мне без классов застилизовать меню?
Хидден не работает почему-то. Из того что написано в гугле я так понял из-за наличия свойства дисплей. Так что хидден тут не прокатит.
Сейчас этим г никто не пользуется
Нет, не делаешь. Я имел ввиду что-то такое
<div onClick={switchMenu} className={`burger-menu ${menuActive ? 'burger-menu_active' : ''}`}>...</div>
И потом в css показывать меню только, если оно active. Скрыть через display none или мб лучше opacity 0 + pointer-events none. Не знаю, как лучше, я сам вкатышь ещё.
Подсмотрел в исходном коде страницы.
А, сорри, я продолбал тот момент, что у тебя клик по меню отслеживается. Отдели кнопку от меню.
Я что-то не понимаю наверн.
onClick={switchMenu} -> меняет menuActive на true -> класснейм выглядит как burger-menu burger-menu_active.
Итог -> имеем оба значка видимыми.
Извини, по двум строкам кода слишком сложно понять, что к чему. Я думал, этот <span> - это то, где будет содержимое меню. Но сейчас я вообще ничего не понимаю.
В любом случае, у тебя код выглядит как-то бредово, что бы он ни делал.
Все забей, разобрался.
Оба варианта работают.
Тогда вопрос к мамкиным сеньорам. Какой вариант правильнее?
Span чтобы нарисовать среднюю полоску меню. Верхняя и нижняя нарисованы через before after.
>или мб лучше opacity 0 + pointer-events none
А по табу они все равно будут выделяться и скринридерами читаться
СПАСИБО
Ну у меня удаленно было, но я и трудоустраивался на фулл удаленку в другом городе.
Недавно искал работу на js джуна. Прошёл 4 собеса перед тем как нашёл. Из них 1 - в офисе и 3 - удаленно.
Тот собес, который был в офисе, прошёл абсолютно бездарно со стороны компании, я теперь бы вообще на оффлайн собесы не ходил. Думаю, мне сильно повезло нарваться хоть на кого то, кто проводит собесы в офисе сейчас.
Не повезло*
50/50.
Чаще всего удаленно, выглядит это так:
Тебе звонит эйчар, распрашивает про опыт, чем занимался, на чем писал, работал ли. В конце скажет, что уточнит твою кандидатуру с тимлидом, а там как пойдет. Еще предложат пройти тестовое задание, тестовое могут дать и до первого звонка эйчара. Тестовые бывают разные, от обычного лендинга без жса, до свое реализации какого-нибудь метода в жс.
После если ты прошел тестовое и ты понравился эйчар, тебя приглашают в офис или звонит тимлид. Там он уже тебя валит вопросами по жсу, опционально по хттп, фремворку.
Я на свою первую и текущую устроился просто написав лендинг с логикой слайдера, технического интервью не было.
Генеральную уборку. Потом съездить к родителям.
С выгоревшими только так
Ага, Мей-чан дейли лайф ему устроили.
if (areOptionsVisible) {
setTimeout(() => {
setAreOptionsVisible(false);
}, 200);
}
};
Подскажите, пожалуйста, мне нужно чистить этот таймер? И если да то как?
Насколько современный? Надеюсь ты хотя бы уже пет на солиджс пилишь, или дальше легасиговна на хуках не продвинулся?
Таймаут надо чистить только если ты его установил и тебе его надо отменить. В твоем примере кода ты его устанавливаешь только по условию, а логики отмены у тебя не предусмотрено.
кроме как
const f: FunctionType = () => {};
?
Так вот, я действительно хуйню творю или он доебывается?
Конечно творишь хуйню. С твоим подходом CI заебёшься настраивать, так как нужно постоянно менять адрес репы (а значит и история коммитов будет проёбана). Да и как думаешь ментор будет проверять твой прогресс? Везти список список реп на каждого вкатуна.
Я имею ввиду, что тип если у меня на руках есть тип функции
type FunctionType = (value: number) => string;
например, в каком-нибудь либе этот тип определён
то как мне для моей функции
function f() {}
обозначить что она типа FunctionType?
Чтобы не надо было указывать типы аргументов отдельно.
Ну так в туйпскрипте ты можешь тип всей функции указать, даже интерфейсом. Вот только его никак не привязать к функциональным обьявлениям, поэтому приходится говнокодить через функциональные выражения.
Наверное, всё же зависит от того, где его используешь. Если внутри реакт компонента, который может заunmountиться, то, возможно, стоит чистить перед unmountом, чтобы этот таймаут не пытался изменить состояние unmountного компонента.
Но я не знаю, так ли это важно. Просто вроде реакт в таких случаях пишет ворнинг в консоль.
мимо
Что тебе конкретно непонятно из фразы - "если ты установил таймаут и тебе его надо отменить раньше, чем он отработал - чисть. если таймер уже отработал - он уже очистился" ?
>иметь пока жив UNIX
На самом деле, в плане С тут еще и эмбеддед разный, и МК, и драйвера (под любые ОС и не только), и еще чего хочешь.
Не стал бы складывать С и С++ в одну корзину. Да, иногда применения пересекаются, но довольно редко.
Так что, что С, что С++, как и теперь уже JS, еще долго будут жить. На наш с вами век, скорее всего, точно хватит.
Сап, учу базис верстки дня 3-4, и хотелось бы поинтересоваться: Джаваскрипт-программер обязан знать как натягивать текстуры в css и прочий кал? Я не угараю по верстке, мне интересно кодить и решать задачки, а не ебаться с обезьяньей работой верстал. Хочу стать, соответственно, джаваскрипт-проггером.
Никем ты не станешь. Ты слишком тупой.
Задача следующая. Есть объект, реализующий symbol.iterator(). По нему реализовано итерирование через for...of.
Мне сказали сделать через lodash/some.
Проблема:
Лодаш мгновенно шлет меня нахуй с такими предложениями.
Т.е. код вида:
for(const entry of iterator)
if(filterfn(entry))
return true
Работает как часы. А код вида
some(iterator, filterfn)
Нет.
Есть ли способы заставить lodash работать с этим говном, или сказать техлиду что он охуел блять, верните мне С++ суки, я ебал блять, помогите что такой подход невозможен?
Это копия, сохраненная 7 июля 2022 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.