Это копия, сохраненная 11 августа в 17:29.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Больше пары строк кода в посте или на скриншоте ведут в ад.
Для программирования на HTML https://codesandbox.io
Для Node.js с консолькой https://repl.it/languages/nodejs
Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если/когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
Снисходительно посмотрел на нищих джаваскриптеров и удалился из треда.
>Разумеется, заход «в мужской иерархии появилось новое место, очень высокое, но вне иерархии» - редкий случай очевидно самоисключающего определения, «великолепного правого сапога, только левого».
>В действительности за пределами иерархии существует только одна должность: изгой. Добровольный ли (встречается крайне редко), вынужденный ли (встречается куда чаще) — но изгой: всё его отличие от омеги состоит в том, что он не изобретательно унижается окружающими, а просто ими игнорируется.
Блядей корёжит.
Дополню этого господина:
- реакт для умственно отсталых окатышей, способных исключительно перематывать тоннами изоленты чужие куски вонючего полурабочего кала;
- ангуляр для опущенных бэкендеров, зашкварившихся об фронтенд, а так же для корпоративных ынтырпрайз калоедов, в свободное от работы время пишущих физзбазз с применением 20 паттернов;
- вью для соевых нитакусь и криптоскама;
- жырквери для дедов, забывших принять таблетки;
- ванилла для настоящих ниндзя, неуловимо и с точностью орла, охотящегося на кролика, вклинивающихся в статику и подчиняющие ее своей железной воле.
Вроде никого не забыл и навалил базы. Мнение? Оправдывайтесь. Почему так?
Дедуля, спок.
>КамплеЖС
CumплеЖС?
>Светл
Невзлетевшее говно без задач с потешным синтаксисом аля "x = x"
>Некст
Квадратное колесо от говноедов для говноедов. Макаки спустя 10 лет открыли для себя, что необязательно собирать дом из говна и палок каждый раз на клиенте, но при этом мысль, что окатышевое изоленточное говно является именно окатышевым изоленточным говном, пока ещё не проникла в одноклеточный спинной мозг. С нетерпением ждем, когда ещё через 10 лет обезьяны изобретут пхп и назовут это революцией во фронтенде
>- вью для соевых нитакусь и криптоскама;
Это реакт для соевых, вью просто для умственно отсталых и криптоскама
С каких пор вью у криптоскама? Там всегда реакт был. Я первый раз реакт попробовал с криптопарашным проектом.
Все вакансии web3 react solidity
Это ближе к истине. Но jsx может нравиться, только челам которые случайно в айти попали (из таксистов) и сразу в реакт. Это как просмотреть курс CS101 на ютубе и всем говорить что ты закончил Гарвард...
Да нихуя подобного, они там и на го/расте кастомные чейны пилят, и традиционный бэк там вполне присутствует как минимум для каких-нибудь ораклов и прочих вещей, не реализуемых в блокчлен-модели
Так это к тебе вопрос, при чем тут фронтенд, ты же написал, что в криптоскаме бэк это строго сосидити. Те вакансии, которые я видел на фронта, все были на вью
Найди здесь несколько вакансий на вуе, я только одну нашел. Остальные на реакте. https://web3.career
Или даже здесь https://hh.ru/search/vacancy?ored_clusters=true&hhtmFrom=vacancy_search_list&hhtmFromLabel=vacancy_search_line&professional_role=96&search_field=name&search_field=company_name&search_field=description&text=web3&enable_snippets=false
Ну может щас так, я на все это смотрел последний раз ещё до войны
> - жырквери для дедов, забывших принять таблетки;
В основном это legacy код, который никто не собирается переписывать. В Alfresco, например, весь фронт на jQuery и основанном на нем YUI.
Раньше jQuery был необходим для кроссбраузерной совместимости, сейчас с появлением fetch и др. в этом нет необходимости. Все браузеры - это клоны Хрома и совместимый с ними FireFox.
> - реакт
> - ангуляр
> - вью
Всех этих мартыханов отправить в гости к профессору Столярову, вручив ему предварительно пулемет с парой лент.
Так, а зачем ты повторил то же самое, что я написал? Я ж так и сказал: жырквери для дедов
Деды не используют его без необходимости.
Еще и докером небось пользуешься? 8 гигов надо для открытия сайта?
Открывай ротешник, маня, сейчас будем лечить тебя уринотерапией.
Пользуюсь ванилой и сервером написанном на с, планирую убрать нахуй прокладку в виде линукса с системными вызовами и написать сервер прямо оборудовании, манипулируя драйверами. Но это довольно сложный проект, ниасилю один. Столяр - шизло поехавшее.
Зачем тебе эта x64 прокладка? Сразу конпелируй свои круды под fpga и прошивай микросхемы.
Надо 8 гигов, но есть нюанс -- 8 гигов надо иметь пользователю, иначе react-carousel-slider-wrapper-adapter-wrapper не влезет и не получится показать ему огромную кислотную кнопку "Отдать все деньги"
Это уже следующая стадия, сейчас занимаюсь унификацией всех взаимодействий.
Доцент Андрей Викторович Столяров и выпускники МГУ ВМК. На 32-битных процессорах доступно не более 4 GB RAM для программы (а по факту 2-3 GB с учетом видеопамяти и др.).
Слышь, чепуха, ты книгу на донаты написал? Написал.
Нахуя зашакалил pdfки? Маневры с твоего говнофорума в расчет не берутся. Донатить тебе на "ПОЧИНКУ" - никто не будет, как бы ты не просил.
Чисти вилкой свое поделие.
>>29057
Шизоида давно пора забанить на дваче по железу, по мамке. Помните те спокойные времена когда ввели новую капчу и никто не всоминал о Столяре?
Анус себе забань, горящая чмоня. Учебники сначала напиши такие, как у Андрея Викторовича.
Нищесброду слва не давали.
Нахуй иди со своими книгамми, ебаный в рот.
Чтобы мне одновременно с сломанным поиском в пдфке, одновременно пердолить книгу на ошибки?
И все это на те донаты, которые тебе организовали?
Чтобы потом 10 раз перевыпускать?
https://youtu.be/JRmKxTLdNo8
Когда научатся писать без классов и не хуярить на каждый пук тысячи объектов. К сожалению в совремненой парадигме это малореально.
Но не беспокойся, парадгима менялась тысячу раз! И сейчас сменится. Скоро. Ожидайте.
Рассуждения интересные, про библиотеки с большими абстракциями, но он забывает что каждая абстракция это лишняя боль и лишнее дерьмо в проекте. Нужно не абстрагироваться, а подключать компоненты, расширять проект, хз как выразить это, горизонтально что ли. Управлять данными, которые будут отражать всякие кнопочки и пуки-выпуки, а не вот это вот всё высокое и абстрагированное.
Рассуждения на уровне средней руки сеньёра, наверное, если учитывать современный уровень сеньёрства.
> мол
Да это же мол! Неудивительно что такую хуйню про абстракции несёт. Даже забыл про это говно, думал оно никому не нужное оказалось, а вон как, даже фанбаза есть.
Эта моль просто игнорирует существование многопоточности и игнорирует любые взаимодействия между воркерами. Упс, абсракции обосрались опять, как же так вышло, никто не ожидал такого от абсракций высокого уровня.
>Рассуждения на уровне средней руки сеньёра, наверное, если учитывать современный уровень сеньёрства.
Ты свой фронтенд фреймворк сперва сделай, а потом будешь рассказывать кто где какой сеньер.
Сделал уже, хуле бы мне пиздеть если бы не делал. Допиливаю сейчас мультипоточные параметры.
>РЯЯЯ НИЩЕБРОД!!!!
жаваскриптизёр, ОЗУ верни
>Нахуй иди со своими книгамми, ебаный в рот.
>Чтобы мне одновременно с сломанным поиском в пдфке, одновременно пердолить книгу на ошибки?
>И все это на те донаты, которые тебе организовали?
>Чтобы потом 10 раз перевыпускать?
какие книги, какие донаты блять, ты совсем кукухой поехал со своими джаваскриптизёрскими замашками?
Ну справедливости ради там 90% отжирают нодовые дев-сервера, текущие как бабы при упоминании зарплаты прочитавшего dive into python.
>>29743
Да нет, отличный язык для динамических петушков, пусть бы лучше уж на нем свои интернет-магазины говна делали, чем превращали все это в SPA, которыми физически неприятно даже пользоваться
Слышал заебись, но не всё так просто. Нужно знать матан и алгоритмы.
Ну а что насчёт всяких пререндеров на сервере, которые шлют уже более-менее собранные страницы?
линкенид?
Если ты про то, что мартыхи называют SSR, то тут зависит от сорта говна, которым ты обмазываешься. Некст в этом вопросе, насколько я знаю, немного поумнее и просто делает гидрацию, в то время как ангуляр юниверсал абсолютно тупорылый и после загрузки скрипта нахуй все сносит и строит дом по новой. Но один хуй они оба тащат весь неебический жс бандл, и спрашивается нахуя вообще огород городили
Бенчи мола говорят что ты не прав
https://bench.hyoo.ru/app/#!sample=moljsx~react~mol/sort=update/count=5700
>Бенчи мола
Вот когда кто-то другой сделает бенчи, тогда и поговорим.
У тебя по ссылке какая-то максимальная залупа, даже от объема параграфов это говно не зависит, а значит в моле используется что-то в стиле "обновлять только то что на экране" и этого нет в других тестах. Явно наебать хотят, пидорасы.
Самый главный минус мола - крайне хуевое взаимодействие с воркерами и огромные абстракции из-за которых в исходники вторгаться нерационально. Например я хочу кнопку сайт с задником в 3d. Что я могу сделать на моле? Пожевать хуй.
Этот блазор же очень медленный и с огромным бандл сайзом, не?
А какие есть годные альтернативы JSX?
Нюанс в том, что далеко не все машины поддерживают 92672 гигабута для просмотра тырнетов.
Большинству достаточно 32. А я люблю много вкладок открыть и одновременно кубер поднять, так что у меня 64.
Пчел, ты не репрезентативен.
На Вуе в основном делают сайты елдаков или гандонов. А на бек берут Битрикс или ларавель. А вот ангуляр - в банках и других больших корпах. Плюс меньше конкурентов. Плюс меньше ебли с ssr, т.к. в основном пилят spa на проектах
Поэтому я хочу в большие корпы. А то сейчас работаю в умеренно большой корпе на Вуе, но большего с этим фреймом я не достигну.
Не перестанем. Отдавай мне свою оперативу прямо сейчас
И где тут препарирование? Чел просто открыл лендинг и доебался до него. Где просмотр исходников?
Ну посмотри, целых 2к просмотров и 30 комментариев. Разве это не фанбаза?
С завода тебя тоже прогонят, ты ведь не можешь точить без станка в голове по-памяти
Как вкатиться в криптошараги? Фронтендер, реакт знаю, чут чут ноджс, на уровне написания крудов. Последнее время работаю за синьерские вилки в финтехе. Думаю одну из работ сменить на шатание web3, с финтехом все понятно, react, typescript, пара собесов и 300к в наносек в кармане. А как быть с криптоконторами? Часто вижу что туда нужны фронты на вкусные вилки в 7+к баксов, что для такого нужно вообще знать?
> Score: 8/10 (80%)
А я на js вообще не пишу. Там вопросы не на js, а на знание правил сравнения и неявных кастов
Нужно знать как устроен блокчейн, разная крипта как устроена, особенно эфир и солана, знать либы типа wagmi, hardhat, ethers, web3, некоторые вакансии с solidity
Нет, но собираюсь. Сам с 7 лет опыта, устал уже за копейки на российском рынке работать.
>- ангуляр для опущенных бэкендеров, зашкварившихся об фронтенд, а так же для корпоративных ынтырпрайз калоедов, в свободное от работы время пишущих физзбазз с применением 20 паттернов;
двачую, как опущенный бэкендер со всеми проектами на ангуляре
p.s. InfernoJS???
>Столярову
Начал за здравие кончил за упокой. Если ты из его секты, то что ты позабыл в этом треде?
Скучно тут, на вилле в Черногории, а горящие веб-макаки ITT хоть как-то развлекают.
Ты видел, кому отвечаешь? Я тот же вопрос задал. Чем им не угодил докер?
Почему Redux популярнее чем Mobx?
1. Redux сильно старше
2. Кто-то ещё пользуется этим говном? По моему на редаксе только легаси осталось
3. Мобикс магический дохуя
>2. Кто-то ещё пользуется этим говном? По моему на редаксе только легаси осталось
Больше половины новых проектов просто по дефолту берут тулкит
Смегма.
>>31665
>>31687
>АРРРРРЯЯЯЯЯЯ МОБИКС НЕ МАГИЧЕСКИЙ, ОН ПРОСТО ПЕРЕОПРЕДЕЛЯЕТ БАЗОВЫЕ ОПЕРАЦИИ ЯЗЫКА, МАМ СКАЖИ ЕМУ ЧТО МОКРАЯ ПИСЬКА ПЕРЕОПРЕДЕЛЯЮЩАЯ ТОЧКУ ЭТО НОРМА
Подрывом динамических петушков удовлетворен. Жопаскрипт по количеству способов нахуярить магии на любой синтаксический элемент скоро с крестами сравняется уже, сходите к крестоблядям спросите у них, как им, нравится ли, когда morkayapiska переопределяет точку, запятую и закрывающую круглую скобку.
>истерическая реакция на то что в js можно всего лишь "слушать" присваивания/удаления свойств в объекте
Ну и ну, вот это кадр в тред пожаловал
>>31782
>динамический калич пукнул гринтекстом, но так как нихуя не знает, то получилось с подливой
Мань, слушать можно было бы, если бы тебе жс давал встроенный обзервер для этого. То, что делаешь прокси -- это переопределение. Чо ты там в своей переопределяющей функции делаешь - это уже твое дело, суть остается та же самая -- это переопределение. Улавливаешь разницу между обзервером и манкипатчингом, или надо разжевать?
>mobx манкипатчинг
>переопределяешь свойство в объекте, который был "переопределён" mobx'ом
>всё переопределилось как надо
Можешь разжевать? А то мне из твоих бабских передёргиваний нихуя не ясно
А где-то шла речь про то, что что-то переопределяется не так, как надо? Выходит что ты передергиваешь, а не я, так чтоль? Ты разницу вообще понимаешь между "сижу на проперте, слушаю изменения" и "подменяю операции доступа к проперте своими и опционально из своих операций дергаю изначальные"? Достаточно разжевал, или надо ещё проще, для самых маленьких?
>переопределил свойство в обычном объекте
>свойство переопределилось
>заебись
>переопределил свойство в проксированном объекте
>свойство переопределилось
>бля ну это уже магия какая то! подрывом динамических петушков доволен!
бля, по такой логике можно любой сайдэффект или паттерн "наблюдатель" назвать магией. Эвона как, функцию вызвал, и подписка сработала! Что за манкипатчинг?
алсо
>защитная реакция при истерике - заваливание вопросами
Будто с 14-летней зассыхой разговариваю, пиздец
>>31831
>>переопределил свойство
Это троллинг тупостью? Я хуй знает какое свойство ты где переопределяешь уже третий пост, повторю еще раз: речь идет о переопределении базовых синтаксических конструкций и операций, какое отношение к этому имеет переопределение свойств?
>по такой логике можно любой сайдэффект или паттерн "наблюдатель" назвать магией
Нет, нельзя. У тебя либо обзервер встроен непосредственно язык и ты можешь вообще делать что-то вроде observe obj.foo: myCallback (не видел таких языков, но гипотетически такое возможно), и тогда это встроенная конструкция; либо тебе std дает возможность это сделать (опять же гипотетический Object.observe(obj, "foo", myCallback)); либо ты костыляешь свой обсервер: оборачиваешь свой объект в какой-то класс, заводишь там список листенеров, делаешь sub/unsub методы, придумываешь свои кастомные евенты и т.д. Ты (и жопаскрипт) предлагаешь вместо этого переопределить точку и делать там чо угодно.
Лол, и правда. Макака с компа не дает постить, поэтому набираю с компа и копирую на телефоне, видимо нажимаю по привычке на рефлинк ещё раз
banana будет, тут очевидно. Другое дело что это нигде не встречающийся антипатерн проектирования.
мимо вкатун скуф
>какое отношение к этому имеет переопределение свойств?
К тому, что
1. Магии и манкипатчинга в Mobx нет. Обычный объект и объект, проксированный Mobx'ом ведут себя одинаково.
2. Можно просто не делать хуйни, и не менять дефолтное поведение с помощью проксей. Как и на плюсах можно не переопределять точки с запятыми. Как и не перегружать операторы, в языках где это возможно.
Мне понятно, что у тебя начинается истерика от метапрогаммирования
>Это троллинг тупостью?
поэтому решил тебя побесить подольше.
>метапрограммирование
Переопределение встроенных в язык операций это теперь называется метапрограммирование? Кек. Ну ладно, но я привык это называть магией
>это теперь называется метапрограммирование?
Всегда называлось. Не был бы неосилятором - знал бы.
Екарный бабай. var origAddEventListener = window.addEventListener; window.addEventListener = function () {origAddEventListener.apply(this, arguments);}
Если это не манкипатчинг, то я не знаю, что это. Хотя ведут себя они одинаково. Не говоря уже о том, что в мобиксе они нихуя не ведут себя одинаково, т.к. в противном случае какой нахуй смысл вообще что-то переопределять, если твое переопределение это noop.
>Откуда ты это взял?
Это тебе пример манкипатчинга, дурында. Совсем чтоль уже от проксей одебилел?
>Причём тут динамические петушки? Иди определение почитай, бедолага.
Пошел, почитал.
Metaprogramming is a programming technique in which computer programs have the ability to treat other programs as their data. It means that a program can be designed to read, generate, analyse or transform other programs, and even modify itself while running
Вон оно как оказалось, выходит что переопределять точку это никакого отношения то к метапрограммированию не имеет
>Это тебе пример манкипатчинга
И к чему этот пример? Я бы засчитал как довод, если бы это было из сурсов mobx.
>Пошел, почитал.
>even modify itself while running
Даже чтение осилить не может. У меня уже живот болит от смеха
>И к чему этот пример? Я бы засчитал как довод, если бы это было из сурсов mobx.
Это опять троллинг тупостью? То есть речь идет о том, что мобикс использует прокси для манкипатчинга встроенных операций, и при этом ты мне говоришь "твой пример не пример, иди найди пример манкипатчинга в исходниках"?
>Даже чтение осилить не может
Ну и где тут модификейшн программы в рантайме? Пока что вижу только манкипатчинг
>У меня уже живот болит от смеха
Так ты поди опять проксей нажрался, передрищешься ведь
>вот тебе пример манкипатчинга, который я только что выдумал
>как он относится к mobx?
>ну это тоже самое что и прокси!!
>"переопределяешь точку" в рантайме
>Ну и где тут модификейшн программы в рантайме?
Катарсис неосилятора. Вершина тупости прям
А, я понял. Переопределять встроенные объекты -- это манкипатчинг. Переопределять встроенные операции -- ррряяя это другое, понимать надо. Все ясно
>гринтекстовый пук
Мань, давай ты тогда для начала дашь определение программы. А то ты щас договоришься до того, что и присваивание значения переменной это метапрограммирование.
Зачем же ты так убого слился, динамический петушок?
Нихуя реактивный господин в тред пожаловал. Моё почтение.
>Переопределять
Для шизов и мартышек. В нормальном и независимом коде нет необходимости что-то переопределять.
/thread
как запретить эту автоочистку, чтобы видеть в консоли все дебаг сообщения?
Так а я о чем? Вылез какой-то динамический петушок и начал мне рассказывать, что ваш манкипатчинг не манкипатчинг и вообще переопределять точку это норма. Я ж говорю, жопаскриптеры скоро по ебнутости синтаксических приколов с крестовиками будут тягаться на равных
Ну вот здесь то кстати прокси пригодится, хех. console.clear = () => {
//Fuck you, smartasses
} и проксей на объекте console перехватываешь и пресекаешь попытки писать в clear, на случай, если они сохранили оригинал этого метода и пытаются его восстановить в качестве защиты от умников типа тебя.
там даже локальные сообщения от моего браузера не выводятся, типа юзерскриптов tampermonkey.
сложилось впечатление что ты сам сейчас присваивание значений переменной манки патчингом назовешь
тупо определения не знаешь
Не знаю исходя из чего у тебя сложилось такое впечатление. Определений тут только ты не знаешь, т.к. до сих пор не привёл определение программы, без которого твой вскукарек про метапрограммирование так и остаётся пуком в лужу.
Я сыч, хочу сидеть дома и получать за эти деньги.
Они тут при чём? Это Роскомнадзор блокирует.
Да, это очень токсичная среда. Тут повышенное количество инцелов, омежек, психически травмированных людей, инфантилов, при этом в интернете они могут безопасно серить.
буржуи хуже, тут тебе хоть через мат дадут ответ на вопрос, кто-то может и подмогнёт с ответ, а буржуй он никогда не подскажет
Уже давно.
Везде так. Именно поэтому идет отбор по соцскиллам. Откровенно токсичный и шизоидный скот должен продолжать сидеть без работы дабы не распугивать нормальных людей.
Нет, буржуи лучше, в РФ это прямо неприкрытая ненависть, у буржуинов за этим стараются следить
Не согласен. В РФ по-людски могут ответить на вопрос как оно есть, хоть и матом поддасть. Буржуй же никогда ответ не даст, будет за семью хитростями делать вид, что он дурачок и не знает. А ведь знает буржуй, но не скажет
Особенно индус. Потом будет со своими соплеменниками над сычом хихикать в обед за миской карри.
Спасибо большое, я пытался вспомнить и никак не мог, при попытках гуглить выходило VeeValidate
- когда vs code отжирает от 2 гигов памяти, а на стэковерлоу один разработчиков говорит, что это из-за того что он написан на электроне и предлагает тебе самому попробовать пофиксить эту проблему несколькими способами.
- когда запускаешь бд через докер, а сам докер не может работать без подсистемы linux которая жрёт памяти как невсебя. Решения до сих пор нет, приходится пердолится с конфигом - на винде!!!!
- когда небольшая приложуха на next весит около гига, потому что много кэша.
Про хром вообще молчу. Три вкладки вполне могут забрать гиг оперативки.
Вы что там нахуевертели с памятью джаваскриптизёры?
Всё плюсодебилы виноваты.
А хули ты хотел, виртуальный дом + ехал див-враппер через див-контейнер и див-контейнер-враппером погонял + пиздриллион тейлвинд классов на каждый див + в ангуляре по 2-3-4 системных атрибута на каждый ебаный элемент прилепляется + неоптммизированные картинки + кэш дев-сервера
> - когда vs code отжирает от 2 гигов памяти,
Ну хз чел... Тебе говно в штаны залили, не иначе. Nwjs вообще жрал 30 мегабайт.
Запускай БД в виндовых контейнерах
Попробуй теперь ещё им пользоваться, а не просто открыть скатанную лаба1 на 20 строк
Чел, кодомакаки по 100-300к зарабатывают, тебе жалко 15к потратить на 64 гига оперативки? Правду говорят видимо про жадных программистов анальников
У меня запаянных 32 гига на новом ноуте, который купил на прошлой неделе зато в атомик хуйс играю и проект компилится рабочий за минуту
Внутри AuthProvider работает. Но там его нет смысла вызывать.
Ещё заметил, что если написать так: const AuthContext = createContext<AuthContextType>({isLoggedIn: () => false} as AuthContext), то всё заработает,но isLoggedIn() всегда будет выдавать false.
Да, так и делаю, пишу в них иногда. Выше 300 метров никогда не жрало. Что делаю не так?
>иногда
Возможно, причина в том, что твой хуилиард вкладок вообще никак не роляет, потому что они тупо не подгружаются в память, поскольку ты в них не заходишь? Ну так, безумное предположение, знаю, но все же. Покормил
https://habr.com/en/articles/809667/
Не в тему. Кампле.жс не новый, это легенда треда.
Погоди, ты хочешь сказать что ты одновременно пишешь в 200 вкладок? И как такое возможно? Специально прокликал 50 вкладок, стало 350 метров. Что, блядь, ты там делаешь что у тебя 2 гига?
Валидация-то, поди, ленивая. Надо специально за ручку дёрнуть.
Вкатунов много, но мне никакой язык кроме жс не нравится, да и на нем я больше всего петов делал
>этот год
В этом году нет. Но я вкатился два года назад, в 20 лет ровно. На рякте долбился что с честным, что с нарисованным опытом в компании - хуй там плавал. А вот на вью нашел работу за 2 недели (и то выбирал)
но на вью терь тоже пиздец. Вкатуны сосут.
К психиатру бы с такими проблемами.
Рад за тебя, ты еще и молодой шутливый
Хули поделать, буду дальше дрочить жс во славу столярову, уже привык и доставляет
А ты маунтил провайдер? Грубо говоря
<AuthProvider>
<ProtectedRoute>
какая-нибудь-хуйня
</ProtectedRoute>
</AuthProvider>
Пахади, ты пытаешься получить данные из контекста не находясь в этом контексте?
>А вот на вью нашел работу за 2 недели
Какие дальше планы по развитию? Я такой же как ты только на годик постарше. Недавно задумался о повышении и был разочарован тем что вью нахуй никому не нужен на зп 200+. А у меня нормального опыта ни в реакте ни в ангуляре нет, печаль
Ты - это я как раз. Я тоже понимаю, что мне повезло попасть в продуктовую с Вуе. А в других местах - посытнее и покруче - он никому нахуй не всрался. Он - для сайтов дилдаков и всякого говна
Уже подумываю над тем, чтобы:
А) пойти на зепку посытнее в пару мест фулкеком но это путь в никуда. Хотя бек писать люблю и против пыхоларосимфоний ничего не имею. Есть даже случай, когда знакомый из РБ уехал вуе-ларавельщиком в Нидерланды
Б) Пойти в менеджмент как-нибудь но не сейчас. Пока ещё хочу покодить
В) Самый ближайший план - это уйти в онгуляр, в какой-нибудь банк или бигтех. Охуенный фреймворк, меньше конкуренции, больше з/п и перспективы
И насчёт последнего. Я тоже очень долго ссал, что всем нужны только владельца конкретного фреймворка конкретной, блять, версии, а то нохаир. Но сегодня открыл вакансии, и там предлагают свитч с Вуе в онгуляр и это не прям ред флаг. И не в одной вакансии. Поэтому попробую сделать свитч, хоть и заебует работа с бытом
хотя в большинстве вакансий да, требуют 3 года попыта только с ангуляр ..*. версии, а остальных шлют нахуй. Хотя не понимаю, почему. Я типо Реакт выучил, пописал на нем годик, пока учился в вузе. А потом срыгнул в вуе буквально за вечер. Ещё и вместе с нюкстом
Но чел, который работал до меня вьюистом-нукстовиком, сейчас уже третий год ангулярщик. Поэтому тут все зависит от упорства и везения, хуле...
Выбирая из двух говн, ангуляр или реакт я тоже все таки думаю перекатываться в ангуляр. План такой, затрепеть на нынешнем месте и жестко упороться в ангуляр примерно до осени тем более что на насиженном месте можно проебываться 24/7 и работать по часу в день и никто ничего не предьявит. В дальнейшем возможно хотелось бы перекатиться в фулстек, но не на ебучем пхп или того хуже битриксе а с вью только туда и берут, а еще лучше перекатиться батрачить на западного барина, а там ангуляр вроде как намного актуальнее чем вью
> Ангуляр вроде бы актуальнее вью
Жа. Да и на локальном срынке много вариантов с сишорпом и ангуляром. Поэтому дерзаем, комрад, -- и перекатываемся!
Только один вопрос, ты будешь пиздеть в резюме, что якобы много лет работал не по вью, а ангуляром -- или честно расскажешь про свой опыт?
Установил @types/core-js
Пишу
>import Set from "core-js/full/set";
Получаю ошибку
>Could not find a declaration file for module 'core-js/full/set'.
>Только один вопрос, ты будешь пиздеть в резюме, что якобы много лет работал не по вью, а ангуляром -- или честно расскажешь про свой опыт?
Вот тут хз, никогда раньше сильно не пиздел в резюме, я мальчик-колокольчик а не волчара. Может быть немного ПРИУКРАШУ свой опыт на ангуляре.
А, я не так понял, я думал ты уже про западного барина спрашиваешь. Не, изначально пиздеть не буду, скажу честно что дохуя опыта на вью, на ангуляре только петики. Если даже на собесы не будут звать, то припиздну в резюме что на прежнем месте работы был опыт не только на вью, но и на ангуляре, но не сильно много например напишу что типа в основном все проекты были на вью, но был один проект на ангуляре который длился пару месяцев, наверное hr-кам важна хоть какое-то упоминание ангуляра в графе опыт работы.
>>35794
Всем спасибо. Надо было просто обернуть в провайдер в индексе, а я в App обернул.
Но теперь другая проблема появилась. После того как я логинюсь происходит редирект на '/' и вроде всё ок, но если перезагрузить страницу, то потом авторизация "сбрасывается" и меня опять редиректит на unauthenticatedPage. На самом желе ничего не сбрасывается, т.к токен лежит в хранилище, просто походу я как-то неправильно использую useState или что-то типо того.
Токен я могу достать только из getUser(), а эта функция асинхронная, наваял вот такое (скрин), но оно не работает и не будет
Ой блять,я там const не убрал, но без него тоже не работает
Из JS знаю только основы.
Переменные, функции, массивы, объекты.
Типа этого.
Есть 2 вкладки.
Нужно, чтобы по клику на каждую из них загружалась определенная html-страница, но без перезагрузки страницы.
Напишите код на чистом js (без jquery).
И попроще.
Сейчас, единственное, что я придумал, это дать id кнопке: <input type="submit" value="test" id="test">
А потом создать обработчик события:
test.onclick = function()
Но меня тут встретило одно "но"
А как теперь в эту конструкцию всунуть fetch?
Чтобы он подгрузил определенную страницу.
fetch('/hui'); в теле функции не перекидывает на страницу по URL '/hui' (относительные ссылки прекрасно читаются моим приложением).
>А как теперь в эту конструкцию всунуть fetch?
Всовывай fetch в onclick, внутри промиса, который он возвращает, обращаешься к id элеманта контента, который надо заменить на новый контент, вставляешь полученные данные в свойство .innerHTML
Волчара...
Я нашел работу на рякт за две недели. Но я всего около 2000 откликов сделал за это время.
Хуюнами. Зачем идти джунами, если я вот писал фронт на рякте (некст) и на вуе (нюкст) - и вообще никакой разницы не почувствовал? А новый фрейм вообще за вечер-два выучил
И к чему падать в зарплате, когда есть случаи, когда люди уходили на другие направления и роли без потери зепки? Это же чисто фреймворк поменять...
Я видел Реакт + Ларавель только два раза за 3 года, лол одна вака на США, вторая на Австралию. Тоже наивно думал, что в такое можно вкатиться
Вообще да, пхп + вуе. Но это абсолютно помойный стек. Говорю тебе как фулхем в прошлом и вуеист в настоящем. Нормальный стек - это сишарп + реакт или сишарп + ангуляр
Кстати, насчет меня >>35994
Я перед вуе и ларой тоже пытался вкатиться в чистый рякт, но не получилось - ни с накрученным опытом, ни с чистым (хотя у меня там было упомянуто, что я студент ит-вышки). Но вот поменял стек - и попал с чистым резюме, без пиздабольства, на адекватную для ждуна зепку.
Но это было в 2022
Ээээ, ты чего? Я вот тоже на реакте писал год (даже полтора) во время учебы в вузе. А вот вью выучил за день. А нюкст к нему тоже за день. Не кисни.
Я учил рякт и вью а в итоге вкатился на ангуляр.
Похуй как-то. Технология есть технология. Главное давить до конца нативу/тупескрипт и великий Прототайп воздаст по заслугам.
Я в прошлом году видел статистику в 2000 откликов на джуновую позицию на реакт. Как думаете, какая сейчас статистика?
Как то его за день выучить? В доках статей на 90 страниц, включая роутер и стейт менеджер, я посчитал. Я официальный туториал реакта пережевывал 2 недели только. И еще мувисерчер 3 недели делал. Правда так медленно получалось потому что он на английском. Но смотрю для вью все на русский переведено, так что может и быстрее дела пойдут.
>Как, блять? Я тоже хочу!
Сейчас хз как. Ангуляровцы чще всего требуются с опытом.
Ну или дудось месяц все вакухи и готовься к собесу. Как иначе?
Мне прост повезло. Взяли без знания фреймворка. Давненько уже.
Кстати, насчет коммерческого опыта. Недавно во время скрининга херка попросили показать трудовую. Я сказал, что у меня всего 5 месяцев опыта в трудовой. Остальные все 2 года можно оттрекать по моим нологам в "мой нолог"
На что она послала меня нахуй и сказала, что я мутный какой-то, раз не по трудовой работал, а как с\з...
Обычно я первый шлю нахуй когда диалог заходит про трудовую или контакты с прошлых работ.
Вышка не техническая, опыт реально 1.5 года, нарисовал 3 года. Петы есть, но очень старые, их никто не смотрел. Перед собесом было тестовое, но там просто функцию надо было написать. Сам собес не душный, в с основном вопросы по реакту. По ноде спросили совсем чуть чуть, знаком ли я с ней или нет вообще, на работе предполагается работа с PM2 (но по знанию ноды сказали что можно выучить походу все необходимое для работы)
Весь фронтенд это одна сплошная ловушка, буквально сфера для умственно отсталых свитчеров (хуже только тестировка). Архитектура какая-то, базы данных, масштабирование, балансировки...нахуй это все, сложна. Другое дело выучить хтмл цсс на уровне школьника, почитать про жс, сделать пару проектов на реакт/вуе, посмотреть назара антонова и вуаля, программист-инженер готов, айда получать сотыги.
Тоже из-за этого чувствую себя дауном
Мимо закончил прог инженерию, всю жизнь стремился в бекенд или околодевопс. В итоге согласился на первую попавшуюся стажировку и попал во вротенд. Я еблан
>Архитектура какая-то, базы данных, масштабирование, балансировки...
Я тебя умоляю. Шо мы в вашем бекенде такого не видели? Дело лишь в том, во что вкладываешь перки обучения, в магию или в силу. В реальном мире перки это время. Фроненд привлекательней лишь тем, что он нагляднее, однако в нем есть куча своих нюансов.
Запрос к апи делается по клику на кнопку поиска. Как при клике на кнопку с сортировкой отправлять новый запрос с заданными параметрами сортировки? Если делать dispatch внутри функции, которая передается в онклик сортировки, то делается запрос, но в выдаче остаётся тот же порядок. Порядок меняется на нужный, только если кликнуть на тот же пункт сортировки второй раз.
Бекендеры и правда дегенераты, видимо.
Там уже нормальную оркесрацию изобрели.
Я прошел курс по реакт, но у меня есть ощущение что меня наебали.
Скажите, есть какая-нибудь статья или брошюра, как писать реакт код, чтобы не тошнило? Ну как делить логику и разметку, как структурировать проект, как лучше всего данные таскать между удаленными компонентами, в общем насущные проблемы, вы все из знаете
хочется не думать об этом самому, а посмотреть как правильно и хорошо сделано у других.
Спасибо за ответ
Ну если ты не ракетостроением занимаешься, да не ебейший математик - все плюс минус одно и то же. Просто с цсс и хтмл инфоцыганам было легче толпу загнать на курсы, потому что раньше реально можно было за одну верстку лутать какие-то деньги, вот и привлекали кнопко-покраской.
Сам тоже придрачиваюсь к человеческим вариантам, fsd архитектура понравилась + гитхаб полистай по запросам готовых вариантиков
локал стораж и чтение кук синхронные
Сколько работаю, на фронте баб не встречал, а бек до 50% под ними.
Кроме вакансий
Насколько я понимаю, у рякта как таковой архитектуры - нету.
Из того что видел - все делают как получится/как умеют.
>хочется не думать об этом самому, а посмотреть как правильно и хорошо сделано у других.
Выбирай любую репу и делай +- так же.
Никак, на говне сметану не сделаешь
>как делить логику и разметку
Что можешь выносишь в хуки, что не можешь не выносишь в хуки
>брошюра, как писать реакт код, чтобы не тошнило
Tao of react
>я сеньор джава девелопер
В твоем случае деформация слишком сильна и уже необратима. Лучше не берись за фуллстек.
Не вывозит.
Я работал с джавистами и знаю о чем говорю.
Работаешь на JQuery много лет. Идешь работать после его смерти работать на Backbone - становишься джуном
Работаешь на Backbone много лет. Идешь работать после его смерти (через год, лул) работать на Ember - становишься джуном
Работаешь на Ember пару лет. Идешь работать после его смерти работать на Angular 1 - становишься джуном
Работаешь на Angular 1 годик-два. Идешь работать после его смерти на Срякт или Angular 2 - становишься джуном
Это так работает, что ли? Тогда почему в пхп-вакансиях рассматривают челиков на %хуйню-нейм-2% даже после работы на %древвня-хуйня-нейм-1%?
Это просто бестолковый полк которому нечего делать в программировании никак не может выбраться из джунов.
*волк
> Скажите, есть какая-нибудь статья или брошюра, как писать реакт код, чтобы не тошнило?
Есть, целый, блядь, гайд от гуглов, как писать в ключе MVvM для дроид девелоперов. Берешь и пишешь без задней мысли с тем же подходом, только на реакте. Делаешь максимально тупые и компощабельные вьюхи, логику пишешь в вмках. Коннектишь всё тонким слоем ака контейнеры. Всё. Любой стейт менеджер, любая UI библиотека, любая архитектура уже ложится поверх этого фундамента или БАЗЫ. Не нужен тебе никакой особенный для реакта гайд. Тем он и хорош, бтв.
Разгадка проста: её драйвили такие люди как Jon Schlinkert. Читаем описание в его гитхабе:
> Several years ago, just before my 40th birthday, I switched careers from sales, marketing and consulting to learn how to program, with the goal of making the world a better place through code.
То есть, во-первых, это был сорокалетний вкатун, во-вторых с бэкграундом в продажах и маркетинге. Запоминаем.
Теперь идём в описание на странице его спонсорства и читаем чем он гордится:
> I now maintain more than 1,000 open source projects on GitHub, which are cumulatively downloaded over 8.5 billion times every month. This represents about 7% of the total downloads in Node.js. You or your organization are most likely using at least one of my libraries somewhere in your open source supply chain (95% of Node.js projects with at least one external dependency rely on my libraries somewhere in the dependency tree).
Поняли? Кто не понял, челик пришёл из продаж, где всё завязано на KPI, и стал работать по тому же принципу.
Больше пакетов, больше скачиваний, больше зависимых приложений. Костыли типа isNumber, которые во взрослых языках просто работают из коробки, и приколы типа isOdd, которые во взрослых экосистемах никогда не становятся зависимостью, стали его способом обретения власти. Он не скрывает, он очень горд огромным числом зависимых проектов, которые можно сломать или сделать вредоносными изменив любую из тысячи его либ на 10 строчек.
Как вам работается с такими лидерами?
Похуй.
Внезапно, если нужно сделать что-то защищенным, ты не юзаешь либы.
Если нужно сделать админку/сайт для продажи деревянных писек, ты накатываешь isOdd, IsNumber и не ебешь себе голову.
То что додик насрал в js и всю экосистему, мне стало понятно с начала гойды, когда спидораки полетели.
Правда было, и сейчас, похуй кто и как, но почитать было интересно.
При этом Линус тоже насрал, про него не забываем.
Да вообще много кто насрал.
ИИ приди, порядок наведи.
Покажи код.
>ИИ приди, порядок наведи.
Представляю как он насрёт в код, если будет обучаться по этим isOdd и isNumber.
Думаю нормального кода кроме говна вообще не будет нахой!
Что вообще на работу не пришлось ходить?
От нуля до 100%
0%
100% это не шутка, просто въебываешь на бесплатных курсах (платные говно) и книгах, становишься хорошим ждуном - сидишь на хх, находишь работку
С чего это они виноваты? Это инцелы сами виноваты, раз не способны вызвать у женщины желание. Вместо перекладывания ответственности на других лучше бы луксмаксингом занимались.
3137841 пошутил.
Как мне разрешить эту ситуацию:
Я получаю страницу по адресу /
На этой странице форма
Форма отправляется с помощью ajax на адрес /store
И казалось бы, отправь форму на /store, а store сделает нужный редирект.
Но хуй там.
Мне летит уведомление, что мой url адрес / не поддерживает post метод.
Значит, отправляя данные с помощью fetch, я остаюсь на том же адресе, на котором находится форма?
Единственное, что я придумал - отдавать страницу и принимать данные с формы одним и тем же экшеном контроллера.
Ну вот в каком-то из давних тредов кидали ангулярщика со стажем, который не мог понять как работает useEffect и прибежал на qa хабр за разъяснениями. Реактеры которые переходят на ангуляр становятся такими же затупками на первое время. Миддл - это человек который способен быстро разрабатывать на технологии, который знает нюансы этой технологии, которые в свою очередь познаются в командной работе. Ну пришел ты из вуе в ангуляр, начал более менее нормально писать. Но времени на разработку ты будешь тратить больше чем миддлы в твоей команде, твоя писанина не будет проходить ревью, какие-то решения будут не так эффективны и оптимизированы. То есть ты по факту и будешь джуном первое время. Если тебе кажется, что даже такие технологии как вротенд фреймворки легко меняются при сохранении экспертизы, то значит ты никогда не разрабатывал ничего серьезного и сложного что объяснимо если ты вьюшник.
Твои примеры не подходят. Пхп это сама по себе васянская сфера, которая не требует никаких серьезных навыков. А бэкбон это времена когда на работу брали за умение включать компьютер.
>Ну вот в каком-то из давних тредов кидали ангулярщика со стажем, который не мог понять как работает useEffect
О! Я!
Правда я на хабр не побежал. Я тупо забил хуй. Нагетерил в гопоте теории и понял. А потом опять забил хуй.
После Ангуляра, кстати, от рякта глаза болят. Как-то все не по полочкам, хотя и старался папочную архитектуру в стиле ангуляра держать.
>Миддл - это человек который способен быстро разрабатывать на технологии, который знает нюансы этой технологии
Мидл, джун, синька - больше холиварная тема. Нету определенного разграничение на того или иного.
Чаще всего под мидлом понимается разраб, который просто может делать без надзора.
Хуй знает зачем вы вообще эту тему тут подняли. Интересные холиварные темы закончились что ли?
Ору
Ты работу сначала найди.
А если найдёшь, и если это будет не Рога и Копыта, то ты пару лет вместо игрулек будешь доучиваться после работы.
>React, React Router DOM, Redux TK и Material UI
У нас буквально такой стек на фронте, разве что не уверен какая там разновидность redux я не фронтендер
Сейчас чтобы найти работу нужно решить 1000 задач на литкоде. Так что тебе не до игр будет. Ну а реальный стек - nest js react angular redux tk three js tailwind.
Рякт либа. Спокойно в Ангуляр влезет.
На codewars достиг 4 kyu. Это считается?
Объясните мне, кому и нахуя нужен тайлвинд? Это же литерали инлайн стили
Так зачем он нужен, если есть инлайн стили?
И уёбищней. Не гибко и лишний оверхед для браузера.
Ну так сделай кнопку, ты ж фронтендер
Выучи базу в виде CSS/JS/TS/DOM API + любой из фреймворков на твой выбор. Если ты это действительно знаешь - тебя с руками оторвут сразу на 150+
Не оторвут. Даже если надрочишь портфолио и гитхаб.
Они его даже не смотрят. Больше половины вакансий на РАСЕЙСКОМ ХОЛОПО-КРЕПОСТНОМ ПЫНЕРЫНКЕ выставлена по-сути для развлечения амбиций руководителей в поисках высококвалифицированных лохов.
>портфолио и гитхаб.
Хуйню несешь. Кабану не интересно вот это вот все. Кабан ждет рабочую единицу, которая готова закрывать таски, копаться в легаси говне и рефакторить. И если ты на такое способен - оффер у тебя в кормане. И не один. И даже не два.
>РАСЕЙСКОМ ХОЛОПО-КРЕПОСТНОМ ПЫНЕРЫНКЕ
Я на этом пынерынке стабильно получаю офферы на 350к+
Пошел нахуй из профессии тебе тут нехуй делать.
Есть <div>
Внутри него <pre>
Внутри <pre> большой текст.
Текст, конечно, не влезает в блок.
Что нужно написать в css, чтобы если я задал ширину, например, 500px, то текст полностью бы вмещался в эту ширину, а все то, что не вмещается, просто шло вниз, т.е. чтобы блок рос вертикально, а горизонтально был одной и той же ширины?
Без горизонтальной полосы прокрутки.
>white-space: pre-wrap
Все равно не помогает.
Текст как был на весь экран и с горизонтальной прокруткой, так таким и остался.
Убрал тег <pre> и текст перестал выходить за пределы блока.
Класс.
Час потратил на эту хуйню.
Ненавижу верстку.
Самое уебищное, что можно делать в программировании.
Я если честно сам не могу понять. Зашел к ним в доку почитать про преимущества и никаких реальных преимуществ не нашел. Они пишут что заебись когда не надо писать css, все в хтмле, но по факту отдельный файл стилей удобнее и не засоряет разметку. Пишут что стилизация таилвинда удобна тем что направлена на конкретный элемент, но есть вложенные селекторы позволяют гибче настраивать стилизацию, а где-то они и вовсе незаменимы (разрабы таилвинда в конечном итоге добавили возможность создавать вложенные селекторы путем создания css кек). Пишут что не надо мозг ебать с уникализацией имен классов, но это уже лет 10 как не является проблемой вообще с появлением всяких модульных стилей и скоупедов. Пишут что ветряная писанина проще и удобне, но по факту надо постоянно лезть в доку и искать как привычное всему человечеству свойство называется в таилвинде.
Конфиг там разве что относительно неплохой с темизациями и пр.
Спок, работа тебе не грозит. Из-за лютой конкуренции фронтенд и куа стали двумя умиральными ямами для вкатуна заводчанина. Поэтому можешь благополучно закинуть идеи потягивания смузи вместе со вкатом и уже сейчас расслабляться поигрывая в игори после завода. И не верь историям успешного успеха анонов из этого треда, это было еще до этой ебейшей конкуренции. И помни также, что все остальные исключения это ошибка выжившего, а исключение подтверждает правило.
>Тебя все бесит потому что ты не понимаешь, что ты делаешь и ебашишь наугад не приходя в сознание. Ты не знаешь бызаовых принципов (того же каскада), и потому для тебя все сложно.
Знаю.
Я не хочу учить фронт.
Хочу только бэк писать.
Я пишу на php.
И вот когда речь идет о том, чтобы написать какой-нибудь метод на php, то да, мне норм, а когда нужно кнопки покрасить, то сразу начинается душниловка ебанная, меня аж воротит от этого.
Как же хочется послать фронт подальше и надолго.
Но увы, приходится с ним сталкиваться.
>>39514
Тебя спросить забыли.
Нулевая, хоть 10 лет накрути. До тех пор пока работодателю нужен работник который может нечто и ты можешь это нечто делать - ты не обосрёшься.
Обосраться может эйчар не сумевший настроить искусственного идиота так чтобы тот показывал резюме тех кто реально может.
Обосраться можешь интервьюрующий тимлид который будет дрочить тебя на алгоритмы, когда единственной твоей задачей будет фетчить с API через танстак.
Ты можешь обосраться, если будет заявлять что умеешь делать то, что на самом деле вообще не умеешь и не знаешь как научиться.
Я то готов, только кабану нужны не умение кодить и копаться в чужом, а 15 лет опыта работы с функциональными компонентами React.
>Я на этом пынерынке стабильно получаю офферы на 350к+
Сиськи покажи.
>Хочу только бэк писать.
Да и ты бэк не понимаешь. У тебя на лцо обыкновенное невежество - это кога люди хейтят что-то не по объективным причинам, а потому что они просто не изучили как оно работает и не хотят это изучить.
Нет никакого бэка и фронта - программиование устроено по единым принципам. Абстракция и алгоритым везде одни и те же. Ты просто скудоумен.
>И вот когда речь идет о том, чтобы написать какой-нибудь метод на php, то да, мне норм, а когда нужно кнопки покрасить, то сразу начинается душниловка ебанная, меня аж воротит от этого.
Какой же диссонанс у тебя интересно будет, если тебе поставят таск - написать метод на php, который красит кнопку.
Словно на php нет ни DOM ни CSSOM.
Поплачь.
Я и сам не ебу. Хейтил тейлвинд года 4 - не меньше. Но потом попал в компанию с тейлвиндом, и теперь сам пишу только на нем.
Как будто у тебя выбор есть.
Говна наверни.
Мне в своё время пришлось очень много времени убить на вещи, которые можно было бы легко спросить, так что травма детства можно сказать
Паш Параш, от того, что ты телегу сменил ты мидлом++ не станешь.
>we1sheng
После чего этот симптом нефритового стержня проявляется?
В это китайское анимешное дерьмо играют или как ещё?
Например пик
Какая-то еба конструкция - либо первое true, либо последнее, путь оно и false.
Какие должны были стоять практические задачи перед js программистами, чтобы им нужно было придумать такую йоба-логику?
На странице 2 инпута, которые могут быть заполнены, а могут быть нет.
Нужно получить значение одного из них, или дефолтное.
const result = input1.value || input2.value || defaultValue
Когда привыкнешь, будешь жалеть что в твоем языкнейм нет такого, потому очень экономит время и ментальную энергию
>Какая-то еба конструкция - либо первое true, либо последнее, путь оно и false.
Глаза протри. Или первое или второе или третье.
Литерали все дефолтные значения так присваиваются.
Привет всем, я fullstack QA (ручное + авто), пишу тесты на go и ts, зп 175к.
Скорее всего буду менять компанию, так как уже сложно расти, цель зп около 250-300к.
Вопрос такой, go я знаю более менее, хотя на него в куа оч мало вакансий, но вот на js, ts больше, но этот язык слабо знаю.
Порекомендуйте курсы, обучалки где именно нацеленность на изучение языка без привязки к фронту, те без html, css и всего такого.
https://learn.javascript.ru/ - Часть 1 для основ, часть 2 скипай, там чисто фроненд, в части 3 можешь глянуть только главу регулярные выражения, если они нужны. Совсем без фронта не получится, но этот учебник лучший.
https://learn.microsoft.com/ru-ru/training/paths/build-javascript-applications-typescript/ - Все основные моменты тайпскрипта, недостающие темы я добирал в https://roadmap.sh/typescript
Классы пишутся в аттрибуте class а стили в style
Мне нравится в куа
"При запуске скрипта лексическое окружение предварительно заполняется всеми объявленными переменными.
Изначально они находятся в состоянии «Uninitialized». Это особое внутреннее состояние, которое означает, что движок знает о переменной, но на нее нельзя ссылаться, пока она не будет объявлена с помощью let. Это почти то же самое, как если бы переменная не существовала."
Как это? Например, я хочу (в мыслях) создать переменную hui, но еще не объявлял ее с помощью let. И что это значит? Движок уже знает о переменной hui, но ждет, когда я ее объявляю?
Возьми да попробуй. Чо сложного?
Руководство для вката уже 2 года не менялось. По нему еще актуально изучать JS? Я прошерстил вакансии впринципе там(в руководстве) многое совпадает.
Нет, движок то твой код заранее видит. И в самом начале , перед выполнением скрипта, он уже знает какие переменные и т.п. будут созданы.
Поэтому они в состоянии uninitialized.
Вот кстати сходный вопрос. Занимаюсь БЧ разработкой, пишу тесты обычно на ТСе, имею представление о том как должен работать бэк, но писать не писал и не сильно понимаю с какой стороны подступиться. Есть может какие-то достойные материалы по какому-нибудь Nest.JS на уровне Zero to Hero?
Да, вопрос актуален ли вкат вообще.
Давненько слышал, что у неста документация бедновата своя, потому и спрашиваю. Впрочем, может пиздят или изменилось что-то.
Кстати вижу, что у них свой ОФИЦИАЛЬНЫЙ(тм) курс появился, посмотрим чё там интересного. Всё лучше чем русскоязычные барыги с удеми.
скажу
Это все предвестники глобальной депрессии в ближайшие годы.
https://www.youtube.com/watch?v=5C6GZQ7UNaU
Лавры Реакт Нейтива не давали покоя. Хотели один-фреймворк-чтобы-управлять-всеми, но свой, а не потешного фейскека. Ничего нового, впрочем. Туда флаттеру и дорога.
Вот с этой строки: function cachingDecorator(func) {
Объясните кто-нибудь что происходит.
Вот что творит инвалидный постинг в /pr
Это терминальная стадия капитализма, когда потребность в деньгах прямо сейчас у акционеров становится единственным движителем.
СЕО и акционеры буквально ломают рынок, ради сиюминутной прибыли. Если разрешить убивать ради этого они и убивать будут.
Ну справедливости ради флаттер был хорош и во многом был лучше RN, но у RN все таки интеграция с вебом, щас еще общую кодовую базу между реактом и RN запилят (розовые мечты кабанычей, теперь одна рякт макака, коих полно на рынке будет писать один код под веб и мобилки). В общем судьба флаттера предрешена.
> Чем лучше?
Бекендер может стать девопсом, архитектором или СТО. И еще у них конкуренция меньше. И условия более щадящие при найме за счет того, что анальника не нохайрят из-за того, что у него был опыт на другом mvc-фреймворке
> Кто мешает быть бекендером?
Я уже мидл+, а в бекенде опять придется стать джуном или трейни. А пиздеть про опыт ссу, так как даже не понимаю, что происходит в моих рабочих репах бекенда.
>девопсом, архитектором или СТО
думаешь, работать этими ребятами по совокупности лучше, чем скилловым фротнендером?
Больше аригато, анонче
Ну до этого я учился лет 8 - с 12 до 20. Написал под сотню проектов на разных стеках
И что самое главное, все эти два года постоянно хуярил и учился. Поэтому вроде с плюсом. А если без плюса, то просто хотя бы мидл
Паша, ты уже давно лидом должен быть, какой мидл.
Ага. А три задачки с литкода в блокноте решио - значит хороший сотрудник.
ХОСПАДЕ ПИЗДОСЕ!!!1один У нас волчара в компании тжри года работает за двоих, а мы и не знали.
>Бекендер может стать девопсом, архитектором или СТО
Не аргумент, сейчас границы между фронтом/беком/архитектором размыты. Можно и на беке писать на TS, и на фронте писать на TS, и инфраструктуру поднимать на TS.
>Я уже мидл+
Такого нет, эту лычку ты сам выдумал.
>а в бекенде опять придется стать джуном или трейни
Всё зависит от твоей борзости. Идти ты можешь на кого угодно, только твоя личная стеснительность/низкая самооценка тебя ограничивает. Ты сам себе такие ограничения поставил.
>пиздеть про опыт ссу
Их это вообще не должно ебать. Сколько лет ты отработал. Ты просто показываешь свои сайты, говоришь вот смотрите это мои работы. Им какое ёбанное дело, за сколько ты свои 5-10-20 сайтов сделал? Они работают? Работают. Клиент доволен? Доволен. Какая разница, за 2 недели эти сайты были сделаны или за 2 года. Или на каком фреймворке ты их делал. Какая разница, на ларавеле, на с++ или блять на вордпрессе сделано? От смены фреймворка что меняется? Веб-сайты новые свойства обретают? Или у них слайдеры другие, формы другие, навбары другие? Или если вместо реакта взял vue, от этого что изменится? Со стороны заказчика, ему какое дело использовал ли ты django или laravel или ещё что. Главное чтобы там были настройки и всё чётенько работало.
>Не аргумент, сейчас границы между фронтом/беком/архитектором размыты. Можно и на беке писать на TS, и на фронте писать на TS, и инфраструктуру поднимать на TS.
Но телик челик ведь будет хуже поднимать инфру и писать бек, чем делать фронт? Трудно ведь быть настолько фулстеком.
Это как качать одну стату у персонажа. Один интеллект или одну силу. Ну то есть в чём необходимость задрачивать один фронтэнд? Чтобы что? Чтобы делать вот такие безумные анимации --> https://motion.zajno.com/ ? Ладно, объясню на пальцах... Клиент хочет САЙТ. У него есть бюджет. Допустим $10к. Если я делаю фронтэнд, мне перепадает 1/3. Большинство фронтэндов не настолько сложные. Что мне мешает взять весь проект и застолбить весь бюджет сайта? Чтобы всё было в гармонии. Нахуя я буду делать гипер эффекты в браузере, а мне бекендер сделает на несте rest api, а девопсер ещё какую-нибудь хуйню придумает. В итоге, это всё выльется в 10 разных фреймворков, которые будут хостится в 10 разных микросервисах, на 10 разных серверах, при этом бюджет распылиться на молекулы. Что мешает взять грубо говоря фулл-стек фреймворк а-ля next.js, чтобы это всё сидело в одном ёбанном месте и тогда не будет сложно быть фуллстеком? Все сложности в основном вы сами себе придумываете. Я каждый день вижу какие-то бложики сидящие в кубернетисе, которым вообще нахуй не нужен этот кубернетис.
Ебать ты крыса. Нет чтобы с пацанами поделиться.
Ты ещё на людей которые против TypeScript "Патамушта он сложнай" не смотрел.
В разных браузерах стучался
На мак недавно сел, на винде и убунте такой хуйни не было
Плохо запускаешь. Надо лучше. Хттп сервер чувствует твои намерения и не отвечает на провокацию.
Пока что самое адекватное обьяснение
Это база
В js есть только объекты. Больше ничего.
Есть еще примитивы, но их можно тоже рассматривать в качестве синглтон объектов, потому как они боксятся, а сделаны разумеется для производительности. (тем более что сейчас ничего не мешает у примитивных добавить в цепочку прототипов прокси объект, отлавливащий сообщения, типа присваивания, и реалиховать поведение прототипов как полноценных объектов, но это ни к чему. проще воспринимать их как синглтоны. когда надо, любой примитив можно обернуть в полноценный независимый объект).
Так. Короче только объекты.
Все объекты делятся на callable и non-callable. Callable это функции, в понимании большинства. Но по факту это все те же объекты, со всеми свойствами что и у других.
Все объекты могут принимать всего несколько типов сообщений - get, set и call. При чем call может принимать только callable объект. при попытке послать call сообщение не-callable объекту будет исключение.
Сообщение get содержит один параметр, сообщение set два. Сообщение call параметром содержит кортеж аргументов, а так контекст this.
Если в объекте (а так же в цепочке прототипов) не назначены слушатели для get и set с определенными параметрами, ищутся слоты с такими именами в объекте и по цепочке. Если находится возвращается то, что в них лежит. Если в них лежит callable объект и ему посылают сообщние call сразу как получили его из слота, то у него будет перегружен контекст (this) на объект из чьего слота его получили. Если только этот объект не был сконструирован стрелочным синтаксисом, иначе контекст перегрузить нельзя. Если после получение callable объекта из слота его сразу не вызвать, а например положить ссылку на него в переменную, то контекст будет сброшен на тот, который был установлен у него в момент его создания (и это не обязательно будет тот же объект из чьего слота его получили).
У callable объектов есть scope (область видимости) и контекст (this) в момент посылки им сообщения call (вызова). scope средствами языка перегрузить нельзя, но некоторые окружения позволяют (например в ноде есть модеуль vm), this перегружается у callable объектов сконструированных не-стрелочным синтаксисом
Классов нет. Есть конструкторы. Любой конструктор принимает новый созданный объект, которому выставлен определенный прототип (другой объект). Оператор instanceof (someObject instanceof SomeClassName) проверяет лишь есть ли в цепочке прототипов у someObject объект который лежит у SomeClassConstructor в слоте с именем prototype. На сам конструктор ему поебать. Чтобы сменить класс, достаточно сменить цепочку прототипов. Даже если объект был сконструированным определенным конструктором.
Так же у объектов есть параметр ограничения доступа, контролирующие его расширяемость или изменяемость (sealed, extensible, frozen). У слотов объекта есть параметры configurable, enumerable, writable. Параметры слотов объекта не влияют на объекты, что в них лежат. Они лишь контролируют доступ к самим слотам.
Все. Никаких классов. Никаких интерфейсов. Как отдельных сущностей. По факту все есть объект и все строит из них.
наследование реализуется выстраиванием цепочки прототипов. Инкапсуляция только на уровне scope'в (читай замыканий).
В остальном все меняется и все динамично, если только специально все не зафризить в момент конструирования. Но обычно этим никто не заморачивается по причине оверхеда и бессмысленности. Разве только фанатики по иммутабельности, н это все из разряда те, кому надо чтобы им по рукам бил компилятор\рантайм\дядя петя. Все "привычные" понятия тянуться в язык для еще более простого вкатывания тех, кто приходит из других языков. Так уж сложилось, что есть куча литературы по привычному, статически классовому ООП, но очень мало по мессадж-пассинг\прототайп-базед\мета-программинг. Все эти притянутые понятия выливают в синтаксический сахар, который не делает ничего полезного, а даже наоборот, еще больше вносит путаницы и от того непонимамания многих вещей в языке. При этом часто этот синтаксический сахар дэже урезан и вспомнинают об этом лишь после (как например проебались с полями в конструкции class и тянут ее теперь только в proposol'ах будущих версий).
JS истинно объектный язык. В современный язык притащили много вкусных вещей для метапрограммирования. Нову примитивную сущность Symbol, и Proxy-объекты. С помощью которых можно еще больше и сильнее перегружать и менять поведение в динамике.
Другое дело, что почти никто не умеет этим пользоваться и не понимает, что такое объектное программирование на самом деле.
Им нужно не объектное, а статически типизированное. А какие именно структуры будут скрываться за этими типами, не собо важно. Важно что это просто структуры и функции, строго привязанные к ним, или иногда менее строго. То, что в Java\C++ это больше структурное программирование, нежели объектное. Объектное программирование не может существовать без динамической среды. Это противоречит самому понятию объекта. А динамическое программирование это слишком сложна и непанятна. И как бы не старались с пеной у рта фанатики кричать про низкий порог входа - низкий он именно что для входа, а не для всего остального. Модификация программ в рантайме всегда было уделом креативно мыслящих людей. Для большинства это слишком сложный уровень высокой абстракции.
В js есть только объекты. Больше ничего.
Есть еще примитивы, но их можно тоже рассматривать в качестве синглтон объектов, потому как они боксятся, а сделаны разумеется для производительности. (тем более что сейчас ничего не мешает у примитивных добавить в цепочку прототипов прокси объект, отлавливащий сообщения, типа присваивания, и реалиховать поведение прототипов как полноценных объектов, но это ни к чему. проще воспринимать их как синглтоны. когда надо, любой примитив можно обернуть в полноценный независимый объект).
Так. Короче только объекты.
Все объекты делятся на callable и non-callable. Callable это функции, в понимании большинства. Но по факту это все те же объекты, со всеми свойствами что и у других.
Все объекты могут принимать всего несколько типов сообщений - get, set и call. При чем call может принимать только callable объект. при попытке послать call сообщение не-callable объекту будет исключение.
Сообщение get содержит один параметр, сообщение set два. Сообщение call параметром содержит кортеж аргументов, а так контекст this.
Если в объекте (а так же в цепочке прототипов) не назначены слушатели для get и set с определенными параметрами, ищутся слоты с такими именами в объекте и по цепочке. Если находится возвращается то, что в них лежит. Если в них лежит callable объект и ему посылают сообщние call сразу как получили его из слота, то у него будет перегружен контекст (this) на объект из чьего слота его получили. Если только этот объект не был сконструирован стрелочным синтаксисом, иначе контекст перегрузить нельзя. Если после получение callable объекта из слота его сразу не вызвать, а например положить ссылку на него в переменную, то контекст будет сброшен на тот, который был установлен у него в момент его создания (и это не обязательно будет тот же объект из чьего слота его получили).
У callable объектов есть scope (область видимости) и контекст (this) в момент посылки им сообщения call (вызова). scope средствами языка перегрузить нельзя, но некоторые окружения позволяют (например в ноде есть модеуль vm), this перегружается у callable объектов сконструированных не-стрелочным синтаксисом
Классов нет. Есть конструкторы. Любой конструктор принимает новый созданный объект, которому выставлен определенный прототип (другой объект). Оператор instanceof (someObject instanceof SomeClassName) проверяет лишь есть ли в цепочке прототипов у someObject объект который лежит у SomeClassConstructor в слоте с именем prototype. На сам конструктор ему поебать. Чтобы сменить класс, достаточно сменить цепочку прототипов. Даже если объект был сконструированным определенным конструктором.
Так же у объектов есть параметр ограничения доступа, контролирующие его расширяемость или изменяемость (sealed, extensible, frozen). У слотов объекта есть параметры configurable, enumerable, writable. Параметры слотов объекта не влияют на объекты, что в них лежат. Они лишь контролируют доступ к самим слотам.
Все. Никаких классов. Никаких интерфейсов. Как отдельных сущностей. По факту все есть объект и все строит из них.
наследование реализуется выстраиванием цепочки прототипов. Инкапсуляция только на уровне scope'в (читай замыканий).
В остальном все меняется и все динамично, если только специально все не зафризить в момент конструирования. Но обычно этим никто не заморачивается по причине оверхеда и бессмысленности. Разве только фанатики по иммутабельности, н это все из разряда те, кому надо чтобы им по рукам бил компилятор\рантайм\дядя петя. Все "привычные" понятия тянуться в язык для еще более простого вкатывания тех, кто приходит из других языков. Так уж сложилось, что есть куча литературы по привычному, статически классовому ООП, но очень мало по мессадж-пассинг\прототайп-базед\мета-программинг. Все эти притянутые понятия выливают в синтаксический сахар, который не делает ничего полезного, а даже наоборот, еще больше вносит путаницы и от того непонимамания многих вещей в языке. При этом часто этот синтаксический сахар дэже урезан и вспомнинают об этом лишь после (как например проебались с полями в конструкции class и тянут ее теперь только в proposol'ах будущих версий).
JS истинно объектный язык. В современный язык притащили много вкусных вещей для метапрограммирования. Нову примитивную сущность Symbol, и Proxy-объекты. С помощью которых можно еще больше и сильнее перегружать и менять поведение в динамике.
Другое дело, что почти никто не умеет этим пользоваться и не понимает, что такое объектное программирование на самом деле.
Им нужно не объектное, а статически типизированное. А какие именно структуры будут скрываться за этими типами, не собо важно. Важно что это просто структуры и функции, строго привязанные к ним, или иногда менее строго. То, что в Java\C++ это больше структурное программирование, нежели объектное. Объектное программирование не может существовать без динамической среды. Это противоречит самому понятию объекта. А динамическое программирование это слишком сложна и непанятна. И как бы не старались с пеной у рта фанатики кричать про низкий порог входа - низкий он именно что для входа, а не для всего остального. Модификация программ в рантайме всегда было уделом креативно мыслящих людей. Для большинства это слишком сложный уровень высокой абстракции.
тут скорее наверное каждая функция в ДЖС это на самом деле функтор и естественно не все объекты - функторы
Хуюнктор.
В жс есть только полтора встроенных метода, которые с натяжкой можно назвать функтором.
Причем сам докер закрыт, процессы закрыты, но какого-то хуя этот процесс живет и ебет всю систему.
Меня вот пикрелейтед вводит в полнейший ступор.
Вроде функция это объект, но при этом замыкания реализованы совершенно ебанутым и абсолютно неинтуитивным образом.
В Delphi, например, анонимная функция - это объект с 1 методом, а все замыкания отображаются на поля, все очевидно и логично.
В JavaScript - АБСОЛЮТНАЯ шиза, и вместо полноценного ООП какие-то костыли, склеенные соплями.
Что в автоматических преобразованиях типов нет совершенно никакой логики, что в замыканиях у функций.
>нормальном языке
Опрделение нормального языка дать сможешь? Где описаны критерии нормаьности, кроме как у тебя в голове?
Откуда ты взял такое предеение?
Всё в порядке, преобразование типо это всё равно шиза, так что не важно что и кто там делает - это всё ебаная ооп-шиза.
Функция должать читать данные и превращать их в другие данные. Всё.
мимо вкатун зумер
Оуу май
Неожиданно хороший пост.
> Какой нахуй паттерн проектирования?)))))
Тоже проиграл с этого. Конкатенация - это теперича самостоятельный паттерн проектирования, о как!
Каких успехов достиг за 10 лет? Просто я ни разу не слышал о тебе в веб индустрии ну кроме двача.
Динамик бог. Злой/добрый - неважно. Он как Демон, который навещал Сократа.
Но, на бренной земле множество богохульников, которые мнят себя ИМ.
Чудеса Динамика редки, но никогда нету сомнения, что эти деяния - его.
«Берегитесь лжепророков, которые приходят к вам в овечьей одежде, а внутри суть волки хищные.» (Матф.7:15).
Задумал приложение написать, но хочется сперва фронт сделать. Или это лишний гемор и лучше сперва простые ручки на бэке прописать?
На экспресс жс написать бутафорский бэк который срёт жейсонами в ответ на запрос
Разверни страпи и накидай там данных
Делаешь контракт и мокаешь ответы.
Я mockoon юзаю, брат жив.
Блядь, просто на сервисворкеры навешай интерцепторы и всё. Спецом даже либу запилили для даунов.
Всегда им был.
Он и сейчас норм.
Ну дайте вкатиться уже.
Ну да, но оно такое твёрдое. Как паштет конечно, но слепить приложение вполне можно. Остальные вообще дрисня, жидкий понос. На них ничего не слепишь.
Не, это полная шизофрения. Может всё таки надо писать let а не const в реактопараше?
Дали ему инициализацию констант ответом сервера, так нет же, хочет ложить и класть.
Ты про useSWR?
Ох уж эти проблемы ООП-говна.
Шизофрения как раз у тебя. Если бы писали let, то ты бы не смог сохранить состояние текущего рендера и, например, откатить изменения назад. Поэтому и пишется const. Данные неизменны для текущего рендера. Даже не буду писать про работу обновления vdom.
Нирикамендую, особенно на дальнюю перспективу. На угле полторы серьезные конторы с хорошими зепеями и бонусами, одна из которых охуевший титек. С другой стороны на рякте сбер, росатом, охуевший яндекс и еще куча контор.
Если есть время и бабки на жизнь, то какой-нибудь go
Просто жму tsc и 0 изменений, при этом до добавления mysql либы все шло нормально. В коннфиге папку нужную билд создал, в нее все изменения создавались
Ты тупой если ты не понял о чем я. Я отлично знаю почему там const.
Рякт же. Конкуренция, конечно, выше, но после двух лет она не роялит. Вообще ближайшие минимум 10 лет в дефиците будут все от таксиста до инженегра , меньше стимулов идти в ойти.
Пасибочки
Этот прав, только реакт учите,во вью и ангуляр не вкатиться
640x360, 6:21
Чтобы толково рассказали про позиционирование, блочную модель и т.д.
css-tricks.com
https://learn.javascript.ru/long-polling#dlinnye-oprosy
И скажите в чем предназначение вот этой строки:
await new Promise(resolve => setTimeout(resolve, 1000));
Пока что ничего.
Я сообщу, когда надо будет.
А если серьезно, то так сложно подсказать зеленому?
Это пауза.
Суть - просто приостановить выполнение кода на 1 секунду.
Заснуть и ждать 1 секунду, потом продолжить.
Чтобы понимать, как это работает, нужно понимать промисы, колбэки, асинхронный код.
Если совсем зелёный, то не заморачивайся особо.
Почему просто не через setTimeout? Чтобы движок джаваскрипта не тормозить, т.к. await это асинхронная операция?
пишем await, если subscribe() и так уже асинхронно ждем response?
Ну так тебе в том случае по ссылке и нужно затормозить код внутри функции, чтобы выполнение дальше не шло сразу.
Если ты про глобальную блокировку выполнения JS, то асинхронный код это не блокирует.
Так setTimeout тоже затормозит на секунду?
Ошибка сервера -> ждем секунду, пока таймаут отработает -> опять вызываем subsribe.
await тут не лишний разве?
В данном ограниченном случае, я не вижу смысла. Наверное лишний.
В реальном коде может быть не лишним.
Подождать секунду
>setTimeout тоже затормозит на секунду
Для этого надо весь последующий код сунуть в калбек. А так с промисом не увеличивается вложенность кода.
Чото по-уебански сделано. Вечная рекурсия будет вечно срать в стек пока не память не кончится.
Во вкладке "инспектор" один html-код, который соот. тому, что показывает браузер, а если нажать "исходный код", то будет другой код.
Как так?
>Если попытаешься объяснить, автоматом поймешь корень проблемы и пофиксишь.
Может быть и так.
Я только начал изучение JS.
Прочитал 90% учебника https://learn.javascript.ru/
Т.е. просто имею представление об языке.
Скорее всего, я чего-то не знаю и у меня происходит каша в коде.
И даже если я начну объяснять сам себе, то вряд ли смогу понять причину.
А если объяснять другим что именно у меня не получается, то:
- выходит долго: придется показать много кода, написать целую пасту какое поведение я жду от кода;
- проект пишется на Laravel, php + js, это может помешать тем, кто не знаком с фреймворком и php, наверное...
Как решение проблемы, я думаю попробовать разобраться как пишутся SPA-приложения на php и js и попробовать переписать свой проект под него.
>И даже если я начну объяснять сам себе, то вряд ли смогу понять причину.
Если что, то я пытался сам себе объяснить.
Там ерунда какая-то.
Я пробовал открывать инструмент веб-разработчика, кидать переменные в console.log, но это мало что мне дало.
декомпозируй
Чтобы никто не переживал, все-таки сообщу: я понял откуда возникает нежелательное поведение в моем коде.
Короче, до меня дошло как сформулировать мою проблему.
У меня есть страница index.html
У нее есть div с id=content.
В этом div есть JS-код, который делает запросы к серверу через fetch().
И также на index.html есть кнопка.
У кнопки обработчик событий по клику.
Клик по кнопке => содержимое div с id=content меняется.
Свойство innerHTML перезаписывается.
Но суть не в этом.
С одной стороны, в div с id=content больше нет JS-кода и код не должен делать запросы к серверу, но!
На практике он продолжает это делать.
В инструментах веб-разработчика, во вкладке "инспектор", показывается html-код. И там внутри div нет JS-кода.
А вот если посмотреть исходный код страницы, то будет тот же код, что был до изменения содержимого div.
А во вкладке "сеть" продолжают посылаться запросы.
Вопрос: почему JS-код продолжает работу, если содержимое div изменено?
JS-код если что вот:
let table = document.getElementById('table');
async function updateTableWithArticles() {
let response = await fetch('/getTable');
let tableText = await response.text();
table.innerHTML = tableText;
await new Promise(resolve => setTimeout(resolve, 20000));
await updateTableWithArticles();
}
updateTableWithArticles();
Короче, до меня дошло как сформулировать мою проблему.
У меня есть страница index.html
У нее есть div с id=content.
В этом div есть JS-код, который делает запросы к серверу через fetch().
И также на index.html есть кнопка.
У кнопки обработчик событий по клику.
Клик по кнопке => содержимое div с id=content меняется.
Свойство innerHTML перезаписывается.
Но суть не в этом.
С одной стороны, в div с id=content больше нет JS-кода и код не должен делать запросы к серверу, но!
На практике он продолжает это делать.
В инструментах веб-разработчика, во вкладке "инспектор", показывается html-код. И там внутри div нет JS-кода.
А вот если посмотреть исходный код страницы, то будет тот же код, что был до изменения содержимого div.
А во вкладке "сеть" продолжают посылаться запросы.
Вопрос: почему JS-код продолжает работу, если содержимое div изменено?
JS-код если что вот:
let table = document.getElementById('table');
async function updateTableWithArticles() {
let response = await fetch('/getTable');
let tableText = await response.text();
table.innerHTML = tableText;
await new Promise(resolve => setTimeout(resolve, 20000));
await updateTableWithArticles();
}
updateTableWithArticles();
>В этом div есть JS-код
У тебя ложное понимание, как это устроено.
Хтмл элементы не могут содержать JS-код.
Соответственно, все твои дальнейшие рассуждения неверны.
Если я правильно тебя понял. Такие простыни сложно воспринимать без наглядных примеров.
Делай интерактивный пример и показывай, что у тебя там
https://jsbin.com/
Без примера нет смысла говорить о коде.
>JS-код обернут тегом <script>
Это значит то, что при парсинге этого элемента браузер возмет его текстовое содержимое и загрузит его в виртуальную машину, которое это содержимое и будет исполнять. То, что там после загрузки проихойдет с этим элементом виртуальной машине строго похуй, она вообще не знает о его существовании
Че старого в реакте
Никогда не видел такой синтаксис, зеленый.
Это селектор CSS, который применяется к элементам с классом "tab-pane", но только к тем из них, которые не имеют класс "tab-pane-show". Давай расшифруем:
- `.tab-pane`: Это основной класс, который применяется к элементам, вероятно, используемым в интерфейсах вкладок (tabs).
- `:not()`: Это псевдокласс CSS, который выбирает элементы, не соответствующие заданному селектору.
- `.tab-pane-show`: Это класс, который, вероятно, используется для определения вкладок, которые должны быть видимы или активны.
Таким образом, `.tab-pane:not(.tab-pane-show)` выбирает все элементы с классом "tab-pane", которые не имеют класс "tab-pane-show". Это может использоваться для стилизации или скрытия определенных вкладок в интерфейсе.>>51603
Спасибо, чятгпт!
Что взять для ММММММАКСИМУМ простого взаимодействия с телеграм в качестве клиента (не бота, а именно подключаясь как будто бы реально сам в нем сидел)? Что сейчас наиболее популярно, стабильно и развивается? Хочу что-то как можно больше похожее на Telethon (https://github.com/LonamiWebs/Telethon), пикрелейтед, но для JS и без привязки к Python.
GramJS
(https://www.npmjs.com/package/telegram,
https://github.com/gram-js/gramjs) выглядит не слишком похожим, хотя они и родственники, но кажется более замороченным и мудреным. Но альтернатив, как я понимаю, из мейнстримных, особо нету?
Совсем в идеале иметь что-то прям простое, чтобы одним GET/POST запросом читать-отправлять сообщения по номеру телефона. Может, какой-нибудь клиент живой и активно развивающийся под это дело существует?
Telegram-CLI, как я понимаю, заброшен?
В общем, я хочу тут переписать свое приложение с джанги на экспресс (я устроился работать фронтенд разрабом и прост уже давно не работал с питоном, а с жсом наоборот стал и вот хочу чтоб бэк в моем проектике тоже был на жсе).
Ну и вот. Вопрос такой, как думаете, какую орм лучше использовать? А то я начал тут читать и их так дохера. Призма вроде симпатичная такая, но чет многие пишут, что говно итд. Как думаете?
Ну оно пет проект конечно, но я мечтаю чтоб оно было не пет проектом. Собственно на работу я устроился уже, вот теперь хочу запилить получше чтоб не перепиливать потом. Ну конечно у меня там сайтик простой, пара крудов, но вот подумал что че бы сразу получше не взять чего-нибудь.
Ну сейчас все равно к Призме склоняюсь.
>>52138
А я джанговскую орм использовал.
ORM не нужны, используй knex
Tdlib жи есть
Если ты решил ормом обмазаться, тогда уж и экспресс надо на какой-нибудь нест поменять.
Ну фронт у меня уже есть на вью, лень переписывать, я бы поулучшал конечно. Да и на работе я с вью работаю к тому же. Правда он конечно вообще не похож, на работе второй с тайпскриптом и класс компонентом и проперти декоратором. Но энивей.
Блять чё значит какую орм лучше использовать? Все орм заебись. Mongoose заебись. Prisma заебись. Typeorm заебись. Sequelize заебись. Drizzle заебись. Нет какой-то одной, кидающей на обе лопатки остальные orm.
Хотя лично мне больше всего нравится дриззл. Почему? Самая быстрая, самая легковесная, самая прикольная орм из всех. Она весит ёбанные 31 килобайта.
Ты конечно можешь использовать призму клиент, который весит 3,3 мегабайта. От этого суперкастрофы не произойдёт, дракула не воскреснет, останкино вещание не остановит.
Ну вот видишь, поэтому и спросил. Так бы и не узнал про самую прикольную, самую легковесную и самую быструю орм.
Да эт не особый секрет, дриззл очень любит Theo Browne. Пиарит как и edgedb в своих видео.
А то! Заказчик любит, когда код выглядит энтерпрайзно.
В useEffect есть еще реактивные константы по изменению которых мне НЕ НУЖНО загружать новые данные.
Линдтер мне ебет мозги что давай добавляй ненужное говно в депенденси. Если я добавляю, то всё ломается.
На стековерфлоу пишут useEffect НИДЛЯЭТОГО предназначен. Как мне тогда загружать новые данные когда меняется проп X?
с 19 версией.
Никакую. Орм - это зло.
Забить хуй на говнолинтер и 'функциональных" фронтокаличей с их влажными фантазиями про депенденси
>Она весит ёбанные 31 килобайта.
>
>Ты конечно можешь использовать призму клиент, который весит 3,3 мегабайта.
А от этого что-то зависит на бэке? Ну типа какая разница, сколько там че весит? Я же не шлю это на фронт.
Пиши классовый компонент.
Листаю код либы router (которая в экспрессе еще была сперва, а сейчас и с обычным http работает) и ниче не понимаю. Какие-то слои там у него.
Для петика то в мапу просто отгружаю, но хотелось бы знать как по умному делают
Правильно ли я понимаю, что самое быстрое и изичное - это вёрстка писем?
Как думаете, если я задрочу вёрстку писем, то потом получится хоть немножко бабла залутать на фрилансе? Или всё занято толпами суперпрофессионалов чемпионов мира ворд скиллз по вёрстки писем?
import setVariable, getVariable from "./my_module";
setVariable("foo");
getVariable(); // string
Что за тупорылый вопрос? Ну конечно зависит! Будет ли разница в скорости, если выполнить 10 строчек кода или выполнить миллион строчек кода? Очевидно, что больше операций. Как это, зависит ли что-то? Ну если орм тащит в проект ещё 100 дополнительных зависимостей. Это ещё дополнительный гемор, который увеличивает размер проекта, а значит проект будет медленнее развёртываться.
>фриланс
мертв с уходом зарубежного барина и массовым наплывом индусов
>вёрстка писем
пососешь с аутлуком, aka internet explorer
>получится хоть немножко бабла залутать на фрилансе?
Лучше листовки иди раздавать на улице, больше толку будет
>Или всё занято толпами суперпрофессионалов чемпионов мира ворд скиллз по вёрстки писем?
все занято тупыми индусами, которые из-за своей тупизны пугают норм заказчиков, которые предпочита.т в текущих реалиях нанимать в штат/заказывать аутсорс
Нет, нету. Используй паттерн factory и перекатывайся в новый тред
const getVariable = setVariable("foo")
>>3152994 (OP)
>>3152994 (OP)
>>3152994 (OP)
Нет, нету. Используй паттерн factory и перекатывайся в новый тред
const getVariable = setVariable("foo")
>>3152994 (OP)
>>3152994 (OP)
>>3152994 (OP)
>Как мне тогда загружать новые данные когда меняется проп X?
useSWR https://swr.vercel.app/ru
Строка.
>На стековерфлоу пишут useEffect НИДЛЯЭТОГО предназначен
Вообще, по-хорошему, без swr, у тебя возникнет race condition. Нужно useEffect с очищающей функцией использовать, чтобы отменялись другие запросы
function SearchResults({ query }) {
const [results, setResults] = useState([]);
const [page, setPage] = useState(1);
useEffect(() => {
let ignore = false;
fetchResults(query, page).then(json => {
if (!ignore) {
setResults(json);
}
});
return () => {
ignore = true;
};
}, [query, page]);
function handleNextPageClick() {
setPage(page + 1);
}
// ...
}
Это копия, сохраненная 11 августа в 17:29.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.