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

JSThread #201 /js/

 Аноним 17/02/21 Срд 17:51:09 #1 №1944376 
image
Предыдущий тред: >>1941748 (OP) (OP)

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

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

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

Руководство для вката: https://developer.mozilla.org
Аноним 17/02/21 Срд 17:55:44 #2 №1944379 
Шёл третий тред, а алгоритмошизики так и не смогли назвать 1(ОДИН) алгоритм и 1(ОДИН) юзкейс, в котором они его использовали.
Или написание кастомных for лупов теперь дохуя алгоритмы?
Аноним 17/02/21 Срд 18:01:20 #3 №1944386 
>>1944368 →
Когда исправишь расскажи что в твоем говнокоде не так было, интересно
Аноним 17/02/21 Срд 18:01:29 #4 №1944387 
>>1944379
Манюнь, я понимаю, что в твоем манямирке все окружающие тебя люди это такие же вкатуны как ты, но реальность такова, что есть и те кто уже работает. Так вот, код который я пишу защищен NDA, погугли что это такое. Я не хочу нарушать договоры ради того чтобы доказать что то сычу, сидящему на мамкиной шее. Мог бы конечно придумать что то похожее, сгенерировать набор данных и написать рабочий код, но не думаю, что у тебя хватит денег для оплаты хотя бы 10 минут моего времени.
Аноним 17/02/21 Срд 18:05:04 #5 №1944390 
>>1944387
>Так вот, код который я пишу защищен NDA, погугли что это такое.
NDA не распространяется на названия алгоритмов.
Аноним 17/02/21 Срд 18:07:47 #6 №1944392 
Нихуя вы начали на целый тред за пару дней, у вас новые тренды так часто появляются как фреймворки
Аноним 17/02/21 Срд 18:08:37 #7 №1944393 
>>1944392
>начали
насрали (быстрофикс)
Аноним 17/02/21 Срд 18:10:47 #8 №1944395 
>>1944368 →
вопрос на засыпку, что сначала выполнится: 32-ая строка или 35-ая?
Аноним 17/02/21 Срд 18:14:09 #9 №1944397 
image
>>1944392
просто все любят нюхать газики :3
Аноним 17/02/21 Срд 18:14:40 #10 №1944398 
>>1944395
Ну хер его знает, я не такой профи. Наверное да, то, что я его под этим аяксом написал, не знгачит, что он после него выполнится. Но это вроде не должно влиять на проблему, да?
Аноним 17/02/21 Срд 18:16:10 #11 №1944399 
>>1944398
Ну так логируй оттуда а не хуй знает чо и когда, может проблема нащупается
Аноним 17/02/21 Срд 18:16:38 #12 №1944400 
>>1944390
>названия алгоритмов
Тебе в прошлый раз написали название, долбоеб, ты начал кукарекать о том что в гугле ничего не нашел и требовать примеров.
Самое смешное, что даже увидев пример, твой манямирок взбунтуется и начнет сыпать оправданиями, потому что такие как ты осознают важность изучения алгоритмов только когда к жопе прижмет, т. е. когда встретишься на практике.
Аноним 17/02/21 Срд 18:20:13 #13 №1944405 
>>1944400
Алгоритмов названо: 0.
Юзкейсов названо: 0.
Аноним 17/02/21 Срд 18:20:47 #14 №1944406 
>>1944395
Всега 35, 32 только после выполнения запроса.
Аноним 17/02/21 Срд 18:21:46 #15 №1944408 
>>1944405
Ты ножкой топнуть забыл и угрозу отморозить уши нам на зло.
Аноним 17/02/21 Срд 18:23:50 #16 №1944411 
>>1944408
А ты забыл назвать 1(ОДИН) алгоритм и 1(ОДИН) его юзкейс.
Аноним 17/02/21 Срд 18:24:16 #17 №1944413 
>>1944399
Ну так у меня даже "Click!" не появляется, то есть вообще кнопка не срабатывает получается.
Аноним 17/02/21 Срд 18:28:25 #18 №1944421 
>>1944413
Так ты хэндлер не повесил на кнопку созданую ёбта
Аноним 17/02/21 Срд 18:31:17 #19 №1944424 
>>1944413
вешай по нормальному на все в том числе будущие сразу
https://api.jquery.com/on/
$('body').on('click','.deleteTaskButton',function(){...
Аноним 17/02/21 Срд 18:34:49 #20 №1944429 
>>1944376 (OP)
тредю зашкварен
Аноним 17/02/21 Срд 18:50:24 #21 №1944442 
Какие каналы на ютубе смотрите когда вас заебало прогать сидя в кресле и вы лежите на диванчике / кровати? Каналы про программирование офкос
Аноним 17/02/21 Срд 18:55:46 #22 №1944446 
>>1944442
> Смотреть про погромирование, когда тебя заебало погромирование.

Ничего страшного. С возрастом это пройдет.
Аноним 17/02/21 Срд 19:06:56 #23 №1944453 
>>1944446
Что пройдет? Желание расти и развиваться? Обычно это проходит к 80ти
Аноним 17/02/21 Срд 19:07:01 #24 №1944454 
>>1944442
Гоша Дударь, ХаудиХо
Аноним 17/02/21 Срд 19:09:04 #25 №1944456 
>>1944454
Ну дударь ладно есть что то годно, но вторый который там же хуйня какая то для детей
Аноним 17/02/21 Срд 19:11:54 #26 №1944457 
image
>>1944376 (OP)
Привет.
Пикрил норм книжка, чтобы вкатиться в жс тому, кто уже на другом прогает?
Если нет, посоветуйте что-нибудь для освоения особенностей языка.

Аноним 17/02/21 Срд 19:13:27 #27 №1944458 
>>1944457
Норм, иди читай
Аноним 17/02/21 Срд 19:14:52 #28 №1944460 
>>1944458
Спасибо
Аноним 17/02/21 Срд 19:15:34 #29 №1944461 
>>1944456
Да это мем на уровне "мерцбау масонна" из /mu
Аноним 17/02/21 Срд 19:22:16 #30 №1944465 
>>1944442
IT-KAMASUTRA, JavaScript.Ninja, Тимур Шемсединов, freeCodeCamp, Brad Traversy, Dev Ed, Aaron Jack, Kent C. Dodds, Web Dev Simplified, Ben Awad, Shai UI, Chris Hawkes, The Coding Train, Simon Dev, Ania Kubow, DevTips, Frontend Weekend, Фронтенд Юность, Tim Ermilov, Low Level JavaScript, Coding Garden, подкаст «Мысли и методы» Рахима Давлеткалиева, TechLead, S0ER, Senior Software Vlogger, Сергей Немчинский, АйТиБорода, Victoria Borodina, Юрий Дудь, Джастас Уолкер, Адвокат Егоров
Аноним 17/02/21 Срд 19:37:20 #31 №1944481 
>>1944421
Почему? У неё же класс такой же. Или вот я не понимаю как оно работает, типа в какой-нибудь ДОМ не попадают элементы и оно их там не видит?
>>1944424
А так кликает да. Только теперь у нового элемента data-id андефайнд...
>>1944386
...потому что блядь кавычки забыл закрыть в имени класса, в коде, который рендерит карточку после добавления в жс коде.
Так что наверное и так бы сработало.
Аноним 17/02/21 Срд 19:40:43 #32 №1944484 
>>1944481
>У неё же класс такой же
Селектор по классу только важен для стилей.
Аноним 17/02/21 Срд 19:42:20 #33 №1944486 
>>1944484
Ну типа что значит "не повесил хендлер на созданную кнопку", когда созданная кнопка такая же как и те, что до этого были? Почему хендлер на тех висит а на эту не вешается типа?
Аноним 17/02/21 Срд 19:45:17 #34 №1944489 
>>1944486
Потому что она была создана после обвешивания хендлеров.
Посмотри в доме, чем она отличается от присутствующих.
Аноним 17/02/21 Срд 19:54:55 #35 №1944496 
>>1944486
$(selector).click() работает так: он ищет все элементы в доме удовлетворяющие селектору и вешает на каждый из них функцию, в новых нодах которые ты добавишь потом естественно хендлера не будет, вызываешь ты его один раз на дом-рэди, либо вешай на создании кнопки на неё хендлер либо используй $().on
Аноним 17/02/21 Срд 19:56:14 #36 №1944498 
>>1944481
>data-id андефайнд
смотри что в аякс-респонсе прилетело
Аноним 17/02/21 Срд 20:13:07 #37 №1944523 
Безымянный2.png
>>1944489
>>1944496
Ну понятно, спс. А в документации вроде написано, что клик - это синоним он(клик).
>>1944498
Да я же и написал сразу, что уже нашел обсер. Сраная кавычка вот тут. Поэтому он так странно и подсвечивался, лел, а я не видел в упор. Но из-за того, что я вместо клика написал "он", я хотя бы это заметил и нашел.
Аноним 17/02/21 Срд 20:40:04 #38 №1944548 
00.PNG
В вкатывальщик, который в позапрошлом треде спрашивал насчет уникальных итемов в корзине. Это лучший алгоритм(который я спиздил с ютуба). Или можно было все таки лучше сделать?
Аноним 17/02/21 Срд 21:15:18 #39 №1944592 
Вы блять не понимаете! Мы все живем в симуляции

Выше нас есть симуляции высшего уровня там другие законы

Мы должны создать симуляцию проще нашей насколько хватит вычислительных возможностей
Аноним 17/02/21 Срд 21:33:48 #40 №1944609 
>>1944592
Вот ссылка на симуляцию https://2ch.hk/pr/res/1944376.html
Аноним 17/02/21 Срд 21:50:17 #41 №1944616 
>>1944548
Зачем функция getHash? Лишнюю строку кода засирает. Тебе здесь filter не нужен, просто в новый чёт спредишь старый стейт и добавляет новый элемент
Аноним 17/02/21 Срд 22:10:45 #42 №1944631 
image.png
>>1944548
Не благодари.
Аноним 17/02/21 Срд 22:39:34 #43 №1944648 
>>1944411
У меня нет NDA, так что в общих чертах отвечу. За все время работы был один случай, когда пришлось чуть-чуть вспомнить дискретную математику - это когда я заартачился и написал движок для поиска и визуализации пути, простой как пень., и редактор точек к нему. На все ушло в районе... двух дней что ли, если алгоритмы считать. Вот и прикинь, сколько времен человеку-энтерпрайзу нужны алгоритмы.

мимокрокодил
Аноним 17/02/21 Срд 23:29:24 #44 №1944674 
Вы куда тред дели? Это что за зашквар?
Аноним 18/02/21 Чтв 01:04:04 #45 №1944708 
А у вас что, бамплимит в 500 как на нулевой?

>>1944152 →
>У твоего расширения есть репозиторий? Был бы не прочь поконтрибуцировывать код в него.

Да не, это я чисто для себя написал. Благодаря подсказкам ИТТ, работает сейчас всё так, как я хотел бы.

А кстати, интересно вдруг стало. Если я, к примеру, со временем расширю базу и захочу вынести этот json в отдельный файл, то это неполияет на производительность или ещё чего?
Аноним 18/02/21 Чтв 01:05:22 #46 №1944709 
>>1944708
>неполияет
не повлияет
ниндзяфикс
Аноним 18/02/21 Чтв 02:11:57 #47 №1944730 
>>1944648
Верстал, плиз. Любой поиск - алгоритм. Любая выборка - алгоритм. Работа с таблицами - алгоритм. Просто работа со списками уже алгоритм.
Можно конечно обмазаться либами, но в интепрайсе ты не можешь либы брать, потому что каждая либа проходит ревью у безопасников.
Алсо, половину этих алгоритмов проходят в 10-11 классе, так шо похуй.

>>1944708
Не, во второй версии говна, рандомизация по индексам. Ща сделаю и скину. Хорошо выходит, ух.
Аноним 18/02/21 Чтв 09:21:07 #48 №1944869 
>>1944730
А когда на толчке сидишь - это тоже алгоритм? И расскажи-ка мне, что ты там в 10 классе проходишь, какую "половину алгоритмов"? Хоть один назовешь или опять сольешься, верстала?
Аноним 18/02/21 Чтв 09:53:32 #49 №1944886 
Недавно вкатился в шаражку, пилю фронт, но бека пока нет. А есть части приложения, которые зависят от ответов сервера. Что можно сделать в этом случае? Есть какие-то сервисы, на которых можно было бы настроить обработку запросов? Или ситуация, когда у тебя вообще нет апишки это проблема бекенда и меня ебать не должно?
Аноним 18/02/21 Чтв 10:01:44 #50 №1944896 
Посоны, а каким образом можно присвоть результаты map сразу двум свойствам?
то есть допустим у меня
this.options = arr.map(...)
this.options2 = [...this.options]
На мой взгляд выглядит как говно. Можно ли сделать это в одну строку?
Аноним 18/02/21 Чтв 10:04:45 #51 №1944897 
>>1944886
Поднять серв на ноде и обработать пару роутов пять минут даже для вкатилы
Аноним 18/02/21 Чтв 10:08:02 #52 №1944899 
>>1944897
Ну 5 минут это долго, думаю секунд 17 должно занять. Ну может 18
Аноним 18/02/21 Чтв 10:16:28 #53 №1944904 
>>1944896
Зачем? Что мешает просто просто использовать this.options?

В твоем коде ты не «присваиваешь результат map», а делаешь поверхностную копию массива. И это, пожалуй, самый идиоматичный способ ее сделать.
Аноним 18/02/21 Чтв 10:23:06 #54 №1944908 
>>1944886
Лучше всего будет поднять простенький сервер на ноде, как было сказано выше уже.
Как еще один вариант - написать два менеджера/сервиса запросов. Один для сервера, другой чисто мок-заглушку, который на любые запросы будут асинхронно возвращать какие-то тестовые данные. И переключаться между ними по надобности.

В этом случае, у тебя будет готовый инструмент для тестирования/разработки фронта независимо от того, какой сейчас треш творится на беке. Но это имеет смысл только если ты там собираешься долго работать и тебе вообще не похуй.
Аноним 18/02/21 Чтв 10:31:42 #55 №1944910 
>>1944908
>>1944897
>>1944899
Так ладно, это действительно оказалось куда проще чем я думал. Мне просто нужно было не столько асинхронный запрос получить, сколько сделать систему верификации отправленных данных. И на это реально в итоге ушло минут 15
Аноним 18/02/21 Чтв 10:45:49 #56 №1944917 
>>1944869
Верстал, вот скажи, ты хоть раз отличал json от object? О чем ты вообще споришь-то?
Аноним 18/02/21 Чтв 11:21:50 #57 №1944961 
>>1944917
Не виляй жопой, верстала, лучше алгоритм называй, всем тредом ждем.
Аноним 18/02/21 Чтв 11:35:00 #58 №1944978 
>>1944961
Алгоритм токов. Ты изучаешь математику, жс, программирование, книжку логики, немного философии. И потом сможешь json от object отличать.
Иначе ты так и будешь обсираться в каждом треде десяток раз.
Аноним 18/02/21 Чтв 11:39:26 #59 №1944985 
>>1944978
алгоритмы не нужны
Аноним 18/02/21 Чтв 11:40:47 #60 №1944988 
>>1944978
>Алгоритм токов
Вихревых?
Аноним 18/02/21 Чтв 12:18:39 #61 №1945069 
>>1944730
>Верстал, плиз. Любой поиск - алгоритм
Алгоритмы, мальчик мой, это не то же самое, что бизнес-логика. Алгоритм - это какой-нибудь сраный муравьиный поиск, который ты пишешь самостоятельно. Или сортировка. Или еще что-нибудь подобное, требующее знания математики и CS, а не умения код набирать. Всё остальное к алгоритмам в программистском смысле не относится.
Аноним 18/02/21 Чтв 12:20:22 #62 №1945074 
>>1944910
Ну собственно. Слава ноде и слава жс, которые позволяют это сделать с полпинка.
Аноним 18/02/21 Чтв 12:21:06 #63 №1945075 
>>1944978
Перетолстил.
Аноним 18/02/21 Чтв 12:21:35 #64 №1945076 
Нормально ли юзать local/session storage для обычных сайтов ? И какой обьем приемлем?
Аноним 18/02/21 Чтв 12:25:45 #65 №1945083 
>>1945076
>Нормально ли юзать local/session storage для обычных сайтов ?
Да. А для каких сайтов он предназначен по-твоему? Каких-то необычных?

>И какой обьем приемлем?
https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API/Browser_storage_limits_and_eviction_criteria
Аноним 18/02/21 Чтв 12:27:16 #66 №1945087 
>>1945083
Куки как я понял нинужны?
Аноним 18/02/21 Чтв 12:30:47 #67 №1945096 
>>1945087
Нужны. LS можно прочитать только через JS, а куки вшиваются в каждый запрос, это важно для SSR, например.

Кроме того, у кук есть атрибуты Secure и HttpOnly которые защищают пользователя от ряда атак.
Аноним 18/02/21 Чтв 13:00:44 #68 №1945140 
>>1945087
>Куки как я понял нинужны?
Разные задачи.
Аноним 18/02/21 Чтв 13:17:17 #69 №1945158 
>>1944708
>Если я, к примеру, со временем расширю базу и захочу вынести этот json в отдельный файл, то это неполияет на производительность или ещё чего?
Конечно влияет, отдельный файл нужно будет каждый раз парсить, а при добавлении новых элементов - перезаписывать. Если не нужно заморачиваться сортировкой джейсона, то можно ограничиться записыванием нового элемента в конец массива.
Но там должно быть дохуя записей, чтобы влиять на что-то. Для сравнения - `package-lock.json` свежеустановленного Create React App - 700КБ размером и 17к строк. И ничего, всем норм. Он, впрочем, нечасто дёргается, только при установке/удалении пакетов в проекте.
И если у тебя не совсем днищепэка, то ощутимой разницы не будешь чуять, пока пилишь под себя. Проблемы могут начаться, когда подумаешь поднять сервер для своего расширения, но там уже не будет проблемой этот джейсон в бд мигрировать.
Аноним 18/02/21 Чтв 13:33:21 #70 №1945175 
>>1945069
> поехавший шизоидный верстала пытается притянуть бизнес-логику зачем-то
> притом что именно в бизнес-логика чутьболее чем полностью построена на графах
Верстал....

>>1945075
Ладно, верстал. Таблетки выпей и лучше станет.
Аноним 18/02/21 Чтв 13:43:26 #71 №1945181 
1613645005546.jpg
>>1944376 (OP)
Анончики, посоветуйте годноту почитать по nodejs для вкатыша. Хочу понять, как серверная часть работает.
Аноним 18/02/21 Чтв 13:50:55 #72 №1945187 
>>1945181
Мдн, метанит
Аноним 18/02/21 Чтв 14:03:37 #73 №1945201 
>>1945175
Таблетки выпей.
Аноним 18/02/21 Чтв 14:04:59 #74 №1945202 
>>1945181
Наебень какой-нибудь проект, одним из компонентов которого будет сервак на экспрессе. Использовать MDN как справочник можно, как учебник - нет.
Аноним 18/02/21 Чтв 14:09:09 #75 №1945208 
>>1945181
Приходит запрос, сервер стартует экземляр твоего скрипта. Всё.
Асинхронно чуть сложнее, но суть та же.
Аноним 18/02/21 Чтв 14:24:36 #76 №1945227 
Так, подождите... А хули редакс каждый раз сбрасывает стейт к дефолту при перезагрузке странице, либо переходе на другую страницу сайта. Зачем он вообще тогда нужен, лол?
Аноним 18/02/21 Чтв 14:26:04 #77 №1945229 
>>1945227
>перезагрузке странице, либо переходе на другую страницу сайта
Освой доя начала азы роутинга в спа, если это не спа нахуя тебе редакс?
Аноним 18/02/21 Чтв 14:26:20 #78 №1945230 
>>1945227
Чтобы удобно шарить общий стейт между компонентами. Юзай redux-persist если тебе сейв в локал сторадж нужен
Аноним 18/02/21 Чтв 14:28:51 #79 №1945232 
Я с таким же успехом мог просто сделать на стейтах и локалсторедже. Тупо.
Аноним 18/02/21 Чтв 14:30:24 #80 №1945234 
>>1945232
Делай
Аноним 18/02/21 Чтв 14:37:06 #81 №1945248 
>>1945232
Лол, удачи
Аноним 18/02/21 Чтв 14:39:17 #82 №1945252 
>>1945234
>>1945248
Да уже все, дороги назад нет. Просто странно что в 2021 все делается через локалсторедж костыли.
Аноним 18/02/21 Чтв 14:43:44 #83 №1945254 
>>1945252
В 2021 ничего не делается ни через лс, ни через костыли.
Аноним 18/02/21 Чтв 14:51:49 #84 №1945264 
>>1945252
А почему ты решил что редакс это делает? И где он должен хранить стейт если не в ls?
Аноним 18/02/21 Чтв 14:54:17 #85 №1945275 
>>1945252
Делают только те кому нужно, по дефолту ЛС не юзается. В чём твоя проблема? У тебя в спа нет роутинга и из-за этого редакс стейт сбрасывается при переходе на другие страницы? Так установи сраный роутер.
Аноним 18/02/21 Чтв 14:55:35 #86 №1945281 
>>1945201
Джейсон... Объект...
Аноним 18/02/21 Чтв 14:59:56 #87 №1945291 
>>1945275
У меня стоит роутер!
Ну условно у меня 3 компонента с разными роутами.
Первый рендерит все карточки товара.
Второй рендерит карточку товара.
Третий - корзина, которая показывает товары, которые были в нее добавлены и рендерит их.
При клике на добавление в корзину -> имя товара, цена и прочее сохраняются в стейт. Но при переходе в корзину он сбрасывается...
Аноним 18/02/21 Чтв 15:02:12 #88 №1945293 
>>1945291
Значит у тебя страница перезагружается. Роутер поставил, а ссылки из роутера использовать не догадался?
Аноним 18/02/21 Чтв 15:05:00 #89 №1945298 
>>1945293
А надо как-то иначе?
Аноним 18/02/21 Чтв 15:05:28 #90 №1945299 
>>1945298
Аноним 18/02/21 Чтв 15:24:40 #91 №1945322 
>>1945293
Скрины почему-то не кидаются. Что я не так делаю?
<Router>
<Route path="/" exact component={Home}/>
<Route path="/login" component={Login}/>
<Route path="/registration" component={Registration}/>
<Route path="/cart" component={Cart}/>
</Router>

<a href="/login"">Log in</a>
<a href="/registration">Sign Up</a>
<a href="/cart"">Cart</a>
Аноним 18/02/21 Чтв 15:27:09 #92 №1945327 
>>1945322
import { Link } from "react-router-dom";
<Link to="/login">Log in</Link>
Аноним 18/02/21 Чтв 15:32:52 #93 №1945338 
>>1945327
Спасибо. Теперь редакс имеет смысл, лол.
Аноним 18/02/21 Чтв 15:45:05 #94 №1945354 
Не понимаю блеадь, как построить приложение с стореоном без всяких преактов и светле? https://github.com/storeon/storeon этот который, от евилмартиенс. Почему https://evilmartians.com/chronicles/storeon-redux-in-173-bytes тут пишут про ререндер от стореона, имеют ввиду либы для реактов и вуй?

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

Блеадь. Что за хуйня.
Аноним 18/02/21 Чтв 16:50:16 #95 №1945417 
>>1945158
Ясно. Спс. Понял даже больше, чем мне нужно. Спросил потому, что мой код будет инжектится на каждую открываемую страницу в браузере. Файл микроскопический, так что зря я парюсь в общем-то.
Аноним 18/02/21 Чтв 16:56:41 #96 №1945423 
Привет, аноны, возник вопрос по тому как взаимодействет фронт с беком, у меня есть задание написать бек для приложения и я знаю что например про определенному урлу оно будет возвращать список, фронт соответсвенно делает запрос, получает список и рендерит страницу, верно? Как после этого работают фильтры и поиск по страницу, есть у меня записи определенные, есть кнопка фильтра, по нажатию на кнопку js должен делать новый запрос к беку и вновь рисовать страницу, верно? Я просто питонист и хочу понять что входит в мою часть работы, а сейчас что-то туплю.
Аноним 18/02/21 Чтв 17:03:12 #97 №1945430 
>>1945354
Ты не знаешь что такое реактивность
Аноним 18/02/21 Чтв 17:21:38 #98 №1945445 
Есть ли в современных фреймворках общепризнанный подход как встраиваться в лайфсайкл чужих компонентов снаружи, не меняя их код? Типа как раньше многие джиквери функции можно было навесить на любую хуйню, только получать не голые дом-ноды, а типизированные компоненты?
В ангуляре можно добавить директиву, и в нее руками передать все что надо, но хотелось бы чтобы работало на все компоненты само.
Аноним 18/02/21 Чтв 17:51:33 #99 №1945457 
>>1945445
>как встраиваться в лайфсайкл чужих компонентов снаружи
Через внешнее API этого компонента. Если же таких возможностей компонент не предоставляет, то сосешь хуй и пишешь свое.
Аноним 18/02/21 Чтв 17:53:41 #100 №1945459 
Почему я не могу залезть в объект, который приходит с сервера в виде жсона?

{
"item1": {
"description": {
"value": "1000"
},
"flag": 1,
"errors": 0
}
}

Вывожу в консоль item1 > объект выводится как показано выше. Если начинаю лезть вовнутрь, начинает на любой глубине выдавать undefined. Если вывожу в консоль любую его вложенность прямо во время фетча типа - .then(data) => console.log(data.item1.description.value), то в консоль доступ к объекту выводится нормально, показывает 1000. Но если я потом его куда-то записываю и хочу получить к нему доступ через записанный объект, точно так же, весь объект внутри undefined. Но при этом сам объект item1 и его структура выводится в консоль, а вот все что внутри недоступно. Что я не так делаю? Что там ломается у жсона при записи в переменную?
Аноним 18/02/21 Чтв 17:54:35 #101 №1945461 
Mobx
Аноним 18/02/21 Чтв 17:59:15 #102 №1945464 
>>1945423
Это зависит от того, как реализован эндпоинт. Самый наотъебись вариант - высирать весь список в джейсон и пусть фронт там сам ебётся с пагинацией и фильтрами.
В более рабочем варианте ты сначала решаешь, будет ли твой эндпоинт реагировать на GET или POST запрос. При гете фильтры парсятся через https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams или эквивалент на питоновском серваке, и ты отправляешь джейсон в ответ. Ну а с постом всё понятно, клиент присылает тебе джейсон, ты его анализируешь и выплёвываешь джейсон в ответ. Собственно твоя работа состоит в написании эндпоинта и что на него должен отправлять фронт, а уж что он там делает с ним после получения ответа - похуй.
Аноним 18/02/21 Чтв 18:07:27 #103 №1945474 
>>1945457
А если не хочу сосать хуй? Внутри фреймворка то все ивенты в любом случае файрятся даже если на них сами компоненты не подписывались, значит можно же что-то задекорировать так, чтобы они просачивались наружу?
Аноним 18/02/21 Чтв 18:11:37 #104 №1945480 
>>1945430
А шо это? Это разве не просто что-то вроде обсервера, который сообщает "подписчикам" об изменениях?
Аноним 18/02/21 Чтв 18:36:58 #105 №1945525 
Как написать что-то на vue без компонентов? Зачем создавать компоненты?
Аноним 18/02/21 Чтв 18:56:57 #106 №1945550 
1582030190080.jpg
Подключив сайн-ап через гугл, я столкнулся с еще одной проблемой - после того как юзер нажимает сайн-ап, вылазит попап окно для аутентификации, а как мне сделать так, чтобы вместо попапа, был редирект на страницу гугла, как это, например, сделано на стаковерфлоу, ну и других сайтах где есть эта фича. Доки читал, но безуспешно, подскажите аутисту.
Аноним 18/02/21 Чтв 19:01:02 #107 №1945560 
>>1945464
Лол, проиграл с варианта, чтобы отдавать полный список, но да, вроде в голове сложилось что через параметры урла просто отдавать отфильтрованные данные, а уже фронт пусть их втавляет в нужные места, кстати, пагинация на беке делается, тоже важный момент, надо запомнить
Аноним 18/02/21 Чтв 19:21:43 #108 №1945579 
>>1945550
Создай скрипт открытия новой вкладки, и на новой вкладке твой этот что там у тебя, санйап. Совсем ебанулся с аниме своим?
Аноним 18/02/21 Чтв 19:27:20 #109 №1945583 
>>1945579
Так нужна не новая вкладка, епт.
Аноним 18/02/21 Чтв 19:27:29 #110 №1945584 
>>1945464
>>1945560
А еще нужно кэширование сделать и алгоритмы формирования json. А авторизацию вынести на сервер. А еще можно через вебсокет. А json через бинарные данные передоват. Да и хранить всё в бинарном формате в бд, через индексы кэша.
А можно просто найти можно проверяй)) бд которая всё это делает безстрочкикода.
Аноним 18/02/21 Чтв 19:30:46 #111 №1945587 
>>1945583
Ну редирект, разница-то. В доках всё написано, читай еще раз.
Аноним 18/02/21 Чтв 19:34:41 #112 №1945591 
>>1945459
await наверняка забыл и записываешь в переменную промис, а не то, что пришло из него. Должно быть либо
let responseBody = await fetch('/').then(r => r.json())
либо
fetch('/').then(r => r.json()).then(storeResponseBody)
Аноним 18/02/21 Чтв 19:44:24 #113 №1945597 
>>1945587
Там написано про редирект, на который юзер переходит после атунтификации. Это не то.
Аноним 19/02/21 Птн 00:28:49 #114 №1945839 
>>1944631
Где алгоритмы? Даже нет хотя-бы слов for, hash
Давай алгоритмы
Аноним 19/02/21 Птн 01:15:12 #115 №1945859 
Node js CLI Build Node js Command-line Automation Dev-tools.png
Хуя бизнесмены.
Аноним 19/02/21 Птн 03:28:03 #116 №1945888 
Сап /pr. Давненько не заходил, но знаю, что тут дадут хороший совет. Тема такая - апликуха на Angular (TS который) - через АПИ фетч данных, в которых есть булевое поле. Эти данные отражаются в таблице, булевое значение которых отражается в виде чек-бокса и должно передаваться POST реквестом (т.е. изменять состояние АПИ) при нажатии на Check-uncheck. Внимание вопрос - как такую хуевину залепить?
1. Нужно ли дробить по компонентам - отдельно таблица, отдельно чек-бокс, который идет полем в этой таблице и который принимает каждую сущность по отдельности? Или все говно слепить в кучу и булевое заменять на чек-бокс?
2. Каким инструментом пользоваться? NgModule? Формы? Вроде бы простая задача, но толковой реализации не могу придумать.
Аноним 19/02/21 Птн 03:34:15 #117 №1945890 
>>1945888
добавлю - как форма будет понимать, с какой срочки пришел запрос на Change, если в таблице куча чек-боксов?
Аноним 19/02/21 Птн 04:03:05 #118 №1945891 
>>1945890
(change)="onCheck(item)"
Аноним 19/02/21 Птн 04:12:17 #119 №1945892 
>>1945891
я получаю массив объектов, у которого по нескольк полей, в том числе булевое, которое в таблице должно показываться как чекбокс. Я знаю, как пользоваться (change), если в случае статического объекта. А тут массив.
Аноним 19/02/21 Птн 04:15:12 #120 №1945893 
>>1945892
*ngFor="let item of items"
<input [checked]="item.yoba" (change)="onCheck(item)"
Аноним 19/02/21 Птн 04:29:57 #121 №1945894 
>>1945893
https://jsfiddle.net/qz82n9pg/

вот такая шляпа у меня. Последнюю колонку нужно как то заменить на чек-бокс. Твой кусок закоментил, ибо нихуя не работает
Аноним 19/02/21 Птн 05:11:50 #122 №1945897 
>>1945591
Да нет, не промис, в том и дело. Причем повторюсь, этот объект даже вывести в лог можно, а вот всё, что внутри него - нельзя
Аноним 19/02/21 Птн 05:59:10 #123 №1945903 
>>1945459
>Что я не так делаю?
е понимаешь как работает ассинхронность и чем отличаются моменты когда ты читаешь свой объект внутри обработчика в then, и когда ты его пытаешься прочитать там, куда записал.

>Что там ломается у жсона при записи в переменную?
Ничего нигде не ломается. Ты пишешь код, непонимая, что он делает и как он на самом деле работает. Перестань относится к программированию, как к магии, где успех зависит от того, насколько тебе повезет. Начни пытаться понимать ЧТО ИМЕННО ты делаешь.
Аноним 19/02/21 Птн 06:00:47 #124 №1945905 
Ребятки поясните за styled components, я так понял все стили задаются в самом компоненте, а куда они потом деваются? В css файл или инлайн?
Аноним 19/02/21 Птн 06:13:36 #125 №1945909 
>>1945903
Спасибо конечно, но именно это я и пытаюсь сделать
Аноним 19/02/21 Птн 06:39:38 #126 №1945911 
>>1945903
Я делаю так, как здесь показано во втором примере. >>1945591
Но вообще конечно в дальнейшем буду иметь ввиду, что вместо конкретных практических ответов, нужно читать людям нравоучения, это уж точно приблизит их к пониманию сути предмета
Аноним 19/02/21 Птн 07:26:54 #127 №1945916 
>>1945905
От реализации и настроек зависит. Обычно создается css декларация и подключается на страницу и на элементы назначаются сгенерированные названия стилей вроде .aBcd . Эти стили учитывают повторяющиеся декларации в исходниках, потому если ты создаешь овер дохуя элементов с одинаковым набором стилей, на выходе они все будут ссылаться на один и тот же css-класс, дабы не злить Окама. При желание можно перенастроить на инлайновые, но лучше не надо.
Аноним 19/02/21 Птн 07:34:11 #128 №1945918 
>>1945911
Чтобы получать конкретные практические ответы, нужно научиться задавать конкретные вопросы, и если они касаются конкретного куска кода, то приводить этот код. А задавая "почему эфемерное у меня не работает", ты получаешь соотвествующий ответ. При чем пользы он несет намного больше, чем твой вопрос. Но даже этого ты понять не способен, или не пытаешься, как и то, то же именно ты делаешь, когда пишешь тот или иной код, вместо попыток удачно составить синтаскически корректное выражение.
Аноним 19/02/21 Птн 07:35:47 #129 №1945919 
>>1945911
>Я делаю так, как здесь показано во втором примере
В этом "втором" примере нет никаких "сохранений чего-угодно в переменную" и "работы с этой переменной где-то потом".

У меня к тебе вопрос. Почему у меня нога чешется?
Аноним 19/02/21 Птн 07:50:24 #130 №1945922 
>>1945919
>>1945918
Ладно
Аноним 19/02/21 Птн 10:10:25 #131 №1945970 
>>1945430
Или реактивность в каком-нибудь солиде ограничена областью видимости функции или компонента?

Блядь шож так непонятно всё. Ебала.
Аноним 19/02/21 Птн 10:48:12 #132 №1945983 
>>1945922
Но вообще не ладно, понятно что нужно разбираться и я сам прекрасно это понимаю. Просто сразу бы и сказали, что недостаточно исходных данных, а вместо этого начали мне басни читать
Аноним 19/02/21 Птн 11:19:05 #133 №1945991 
>>1945903
>>1945919
Верстал, ты ебанутый? Нахуй ты пытаешься строить из себя эксперта? Не забывай что ты не знаешь даже что такое ДЖЕЙСОН и объект.

>>1945459
Ты должен сначала распарсить json. Гугли как это делается. Json должен иметь корректную структуру. Потом просто делаешь что-то уровня json['item1'][4]['hui'] и получаешь свои данные.
Короче, проверь сначала что ты вообще делаешь и корректнуть структуры.
Аноним 19/02/21 Птн 11:37:38 #134 №1945997 
>>1945894
https://stackblitz.com/edit/angular-ivy-rrawpi?file=src/app/app.component.html
Аноним 19/02/21 Птн 12:34:53 #135 №1946072 
>>1944376 (OP)
такой вопрос написание нейросетки для написания сайта (интернет магазина,визитки,бложика) насколько реально?
фронт энд уже преставил но чуствую с бекэндом ебнусь
Аноним 19/02/21 Птн 12:38:37 #136 №1946075 
16117635680500.mp4
>>1945997
Заебись, чотко
Аноним 19/02/21 Птн 12:43:58 #137 №1946079 
>>1946072
>фронт энд уже преставил но чуствую с бекэндом ебнусь
Берёшь и пишешь парсер тех. заданий для фронта и энда. Не забудь ещё модуль ObkashlivatelVoprosikov написать.
Аноним 19/02/21 Птн 12:51:10 #138 №1946083 
>>1946079
ну я так и представлял
парсер-бд синонимов слов-привязваем каждый элемент функционала к определенному слову
было бы неплохо базу данных с тех заданиями существующих или готовых сайтов но не думаю такая существует
Аноним 19/02/21 Птн 12:58:11 #139 №1946091 
classes.png
У меня есть компонент кнопка, которую я хочу отрендерить с определенными классами в зависимости от условий, чтобы было как прикрилейтед, но так почему-то не работает, что я делаю неправильно? styles это файл из которого я импортирую стили и в нем соответственно есть .class1 {} и .class1.class2 {}
Аноним 19/02/21 Птн 13:01:33 #140 №1946101 
>>1946091
>.class1.class2
А так можно?
Аноним 19/02/21 Птн 13:08:59 #141 №1946111 
>>1946091
CSS модули что ли? В них нет такого понятия, как ".class1.class2". Называй селектор одним словом и не выёбывайся.
Селектор вида:
class1 {
&.state1 {}
&.state2 {}
}
Выглядит так в коде:
`className={`${styles.class1}` ${props.something ? styles.state1 : styles.state2}}`
Аноним 19/02/21 Птн 13:11:41 #142 №1946117 
>>1946111
>&.state1
В scss во вложенных стилях можно же не ставить & все равно вложенность будет учтена, или нет?
Аноним 19/02/21 Птн 13:28:43 #143 №1946140 
>>1946117
>В scss во вложенных стилях можно же не ставить & все равно вложенность будет учтена, или нет?
Необязательно, но я его всегда ставлю, так как позволяет взглядом отличить вложенный селектор по потомкам от доп. селекторов на класс.
Аноним 19/02/21 Птн 13:31:48 #144 №1946143 
>>1946111
Спасибо анон
Аноним 19/02/21 Птн 13:42:09 #145 №1946165 
vs-code.jpg
Как в настройках VS Code убрать вот эти всплывающие описания? За это вроде отвечает IntelliSense, но не понимаю, какие галочки убрать в настройках, а убирать их все кажется плохим решением, вдруг перестанет что-то важное показывать.
Аноним 19/02/21 Птн 13:43:00 #146 №1946169 
>>1946165
Там VS Code на полэкрана открыт, если че.
Аноним 19/02/21 Птн 14:27:12 #147 №1946290 
IMG0902.jpeg
Че за черти? Так вообще кидают приглос?
Аноним 19/02/21 Птн 14:40:12 #148 №1946316 
Ловушки через  класс  Proxy -  это актуальная фича? Или этим щас никто не пользуется?
Аноним 19/02/21 Птн 14:51:43 #149 №1946330 
>>1946290
Это HR агент, который хочет получить долю от твоей зп.
Аноним 19/02/21 Птн 15:04:59 #150 №1946353 
>>1945991
Он уже все распарсил, долбоеба ты кусок.
Делает он примерно следующее

let a
fetch(url).then(r => a = r.json()).then(r => { a = r; console.log(a) })
console.log(a)

И не понимает (как и ты, который не способен уловить суть типичной проблемы вкатывальщка), почему у него внутри then все работает, а потом внезапно не работает.
Аноним 19/02/21 Птн 16:44:47 #151 №1946462 
Подозреваю, что нужно показать код, но...

Есть отправка формы, после того, как приходит ответ с сервера о том, что значение в форме правильное - форма проверяет ответ, и форма начинает светится зеленым светом.
Компонент весь целиком остается тот же самый, но если после фетча я отправлю полученное с сервера значение еще и в мобХ, при том, что нигде это значение на самой странице еще не используется, вся страница полностью сбрасвает локальные стейты и отображает только то, что записано в глобальном стейте. preventDefault в отправке формы прописан, страница не перезагружается, а только сбрасывает все локальные стейты на изначальное состояние Блядь как же я ненавижу мобх, даже если проблема вообще не в нем это самая пидорестически ебанутая хуета из всего, с чем мне приходилось иметь дело, с абсолютно ублюдской докой и коммьюнити, которая была устаревшей еще в прошлом веке, просто одна громадная куча пидоров человеконенавистников людоедов
Если это не какая-то платиновая классика, то код конечно покажу
Аноним 19/02/21 Птн 16:45:24 #152 №1946464 
Бамп
Аноним 19/02/21 Птн 16:52:09 #153 №1946468 
>>1946464
Нахуя ты бампаешь дебил? Тут тебе не Б, никто по всей доске с порванной жопой не бегает, все и так сидят тут. Сейчас еще подумают, что это я бампаю тот кто задал вопрос выше и совсем меня обоссут
Аноним 19/02/21 Птн 17:00:43 #154 №1946475 
>>1946462
Все стало гораздо хуже - проблема пропала сама собой, пиздец, надо пробздеться похоже
Аноним 19/02/21 Птн 17:40:05 #155 №1946510 
>>1946316
Пользуются. Все охуели от производительности реакта и теперь пишут обсерверы вручную, лишь бы лишних рендеров не было
Аноним 19/02/21 Птн 17:41:21 #156 №1946511 
>>1946468
Вот это ты мнительный омежкин
Аноним 19/02/21 Птн 17:43:43 #157 №1946512 
В mobX можно обновлять стейт прямо в сторе? Например есть один observable itemsCount = 4 и другой itemPrice = 500
Например если я хочу обновить total перемножив два предыдущих значения? Такое допускается вообще? Или лучше внизу в самих компонентах это все обрабатывать и экшеном перезаписывать?
Аноним 19/02/21 Птн 17:45:45 #158 №1946514 
>>1946512
Вычисляемые поля не нужно хранить
Аноним 19/02/21 Птн 17:52:33 #159 №1946523 
>>1946514
Почему? У меня просто это перемноженное значение потом в разных местах может отображаться, и так было бы удобнее
Аноним 19/02/21 Птн 17:58:16 #160 №1946534 
>>1946514
Так, я кажется нашел то что мне нужно, называется computed
Аноним 19/02/21 Птн 21:12:45 #161 №1946782 
image.png
image.png
image.png
Почему так нахуй?
Аноним 19/02/21 Птн 21:24:49 #162 №1946791 
>>1946782
Комментарии напиши
Аноним 19/02/21 Птн 21:25:56 #163 №1946793 
>>1946791
//Почему так нахуй?
Аноним 19/02/21 Птн 22:39:54 #164 №1946850 
>>1944917
Что там отличать то, блядь? Любой JSON, который ты встретишь, в рантайме будет иметь строковый тип. Алгоритм - проверить тип у прилетевшей сущности? Дегенерат, блядь.
Аноним 19/02/21 Птн 22:52:13 #165 №1946866 
>>1946782
Потому что ты дегенерат, блядь. Что по твоему вернет f.apply(), результат которого передается в setTimeout на втором скрине?
Аноним 19/02/21 Птн 23:06:51 #166 №1946883 
>>1946866
Какая разница что оно там вернет если читай документацию пик 3?
Аноним 19/02/21 Птн 23:07:17 #167 №1946884 
>>1946462
>Есть отправка формы, после того, как приходит ответ с сервера о том, что значение в форме правильное - форма проверяет ответ, и форма начинает светится зеленым светом.
Что за наркомания? Ссуть клиентской валидации - проводить проверки инпутов, не требующих запроса с сервера.
Аноним 19/02/21 Птн 23:11:31 #168 №1946896 
>>1946883
Ну давай тогда рассказывай, какой же код возвращает f.apply().
Аноним 19/02/21 Птн 23:16:15 #169 №1946900 
>>1946896
Хули ты доебался? Я вообще-то здесь язык учу. И когда мне в офф. доках пишут что принимается "строка кода для выполнения" то я и рассчитываю на то, что моя строка кода внезапно! выполнится.
Аноним 19/02/21 Птн 23:25:01 #170 №1946917 
>>1946900
Так она и выполнилась. Вот только она не строку кода и не функцию вернула.
Кантор кстати не офф. дока.
Аноним 19/02/21 Птн 23:31:48 #171 №1946925 
>>1946917
>Вот только она не строку кода и не функцию вернула.
А что?
>Кантор кстати не офф. дока.
Я про мдн.
Аноним 19/02/21 Птн 23:39:11 #172 №1946933 
Могу ли я запихнуть тяжелые вычисления в промис, чтобы они не блочили сайт? Есть ли в этом какие-то подводные?
Аноним 19/02/21 Птн 23:49:03 #173 №1946942 
Спасибо >>1945997 анону, но я все еще хочу разобратся в "правильной архитектуре" предложений на ангуляре. Небольшое лирическое отступление - пришел я из мира ООП, где все должно быть инкапсулировано, обособленно и логически выстроено. Из за этого раньше JS даже не трогал - что ни проект, то ленты глины, каких то зависимостей тонны болтаются - это не по мне. Но когда я открыл первый проект с ангуляром на TS, пися начала твердеть от статической типизации и разделении объектов на компоненты и модули. Но это лирика. По сабжу - из моего проекта, который состоит из N компонентов есть "общие" куски данных. Внимание вопрос - как их передавать между другими компонентами?
Я бы на своем, родном .NET даже не думал - вынес бы репозиторий (если БД, в моем случае это сфитченая дата) и в DI добавлял бы в каждый класс, который в нем нуждается.
Как поступить в ангуляр? Я могу пойти по пути наименьшего сопротивление, все свалить вкучу (там таблица, кнопка, диалоговое окно и т.д.) , но жопа чует, что говнокод лепить не кошерно. Теперь к конкретике:
1. Есть таблица, в которой отражаются данные (там же и изменяются)
2. Есть диалоговое окно, которое отражает результирующие данные.
Какую связь построить между этими двумя компонентами?
Аноним 19/02/21 Птн 23:53:53 #174 №1946945 
>>1946925
Долбоеб, блядь. Редко такое говорю, но выкатывайся нахуй, не твое.
Аноним 20/02/21 Суб 00:01:10 #175 №1946952 
>>1946900
В доках и спеке написано про литерали строку. Сущность, которую оператор typeof при вызове обзовет как 'string'. А не строку кода, дегенерат ебаный.
Аноним 20/02/21 Суб 00:05:38 #176 №1946954 
>>1946945
>>1946952
Ебать вы тут какие агрессивные все. Вас не ебут что ли?
Аноним 20/02/21 Суб 00:09:12 #177 №1946955 
>>1946954
Я один. А хули не поагриться на дегенерата ебаного?
Аноним 20/02/21 Суб 00:10:28 #178 №1946956 
>>1946955
Сколько пишешь если пишешь на js?
Аноним 20/02/21 Суб 00:15:19 #179 №1946958 
>>1946956
Тебя это ебать не должно.
Аноним 20/02/21 Суб 00:26:08 #180 №1946963 
>>1946933
Совсем тяжёлые вычисления надо пихать в воркер, промисы всего-лишь пропукивают свой код между циклами основного потока.
Аноним 20/02/21 Суб 00:54:53 #181 №1946970 
>>1946942
Делаешь page component, в него инжектишь стор, говоришь стору «загружай данные». Кладёшь на page table component, суёшь данные из стора в table через input. У table есть output «нажали кнопку 1 (на такой то строке)». В page подписываешь на этот output, показываешь модалочку. Модалочку можно показывать через ngif конеш, но у тебя же АМ, инжектишь модал сервис, открываешь модалочку через него. Контент модалочки это естественно ещё один компонент. Модал сервис дот опен ретурнит модал реф, у него есть какой там стрим с результатом, в page на него подписываешься, снова говоришь стору «что то произошло, выполняй эффекты, обновляйся». Коробочка жужжит, белье с тянок само сваливается.
По итогу таблица умеет только красиво показывать данные, модал контент умеет только красиво показывать данные, стор умеет только получать и отправлять данные, страница сама ничего не умеет кроме лэйаута, но его тоже можно вынести в отдельный компонент, зато управляет всем остальным
Классика крудов
Аноним 20/02/21 Суб 01:23:54 #182 №1946977 
>>1946970
Я типо такого делал на реакте, я правда не сильно продвинулся - есть родитель, в него входят разные компоненты. Родитель - хранитель всех "общих" данных. Еще можно было через Redux прокидывать и из него вытягивать.
>ngif
>AM
Это что?
Спасибо за ответ
Аноним 20/02/21 Суб 01:35:21 #183 №1946981 
>>1946970
>По итогу таблица умеет только красиво показывать данные
Но нахуя? Содержание таблицы - локальные для этой таблицы данные, стор в частности и страницу в целом ебать не должно, что в ней лежит и как манипулируется.
Аноним 20/02/21 Суб 02:30:06 #184 №1946995 
>>1946900
Ты передаешь не строку, а результат вырадения функции, который строкрй не является. Пиздуй в начало учебника к опрелелениям типов данных изучать что такое СТРОКА, ЧИСЛО, БУЛ, ОБЪЕКТ
Аноним 20/02/21 Суб 02:35:34 #185 №1946997 
>>1946917
>Кантор кстати не офф. дока

Что такое офф? И где по-твоему оффдока находится?
Аноним 20/02/21 Суб 02:46:56 #186 №1947000 
HTML Standard.png
>>1946997
>И где по-твоему оффдока находится?
В спеке.
https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#timers
Аноним 20/02/21 Суб 02:52:04 #187 №1947002 
>>1947000
А спеку, кто пишет?
Аноним 20/02/21 Суб 02:56:49 #188 №1947005 
>>1947002
Мамка твоя Не Кантор.
Аноним 20/02/21 Суб 03:12:06 #189 №1947007 
Capture6.PNG
Capture5.PNG
Аноны, не шарю в джс и вебе, помогите, пожалуйста.

Короче нужно js код с пика 1. Вставить в группу theread-links с пика 2. Как правильно прописать путь от js скрипта, а то у меня не линкуется ничего.
Аноним 20/02/21 Суб 03:44:19 #190 №1947013 
>>1947007
Ты хочешь в шаблон элемент вставить или чё?
Аноним 20/02/21 Суб 03:59:11 #191 №1947015 
>>1947013
да в шаблон нужно вставить элемент через js. в тэг span thread links как в js Корректно путь к нему указать?
Аноним 20/02/21 Суб 05:41:26 #192 №1947026 
Я отрендерил список элементов в вью из массива объектов через v-for item in items либо в реакте через items.map(item => ...), и мне нужно при нажатии на элемент сменить какое-либо значение в объекте с данными, на основе которых элемент был отрендерен, то есть нужно в массиве с объектами найти нужный элемент, например через find, потом я меняю этот элемент в массиве, и после этого будет ререндер всего списка? Если верну новый массив то будет скорее всего, да? А если я мутирую старый массив через обращение к найденному элемента по индексу (вместо find findIndex)?
Аноним 20/02/21 Суб 05:54:09 #193 №1947028 
>>1947026
В реакте нужно ебстись с поиском элемента в массиве, в vue как бы пожно пушить сплайсить т.к там magic
Аноним 20/02/21 Суб 06:37:36 #194 №1947031 
>>1946884
Там введение промокодов, я же не могу их в клиент зашить
Аноним 20/02/21 Суб 06:54:02 #195 №1947035 
>>1944400
Мля, лол, это ты тот шизик, который назвал несуществующий алгоритм, а потом когда я попросил дать любую ссылку, где он освещается, ты просто ничего не ответил?
Советую принять таблетки, ты наглухо ебанутый шизофреник.

мимо анон, спрашивающий у этого овоща про несуществующий алгоритм и так и не дождавшийся ответа.
Аноним 20/02/21 Суб 06:58:10 #196 №1947037 
>>1944453
>Рост и развитие
>просмотр ютубчика
Какие же малолетки дегенераты.
Аноним 20/02/21 Суб 06:58:59 #197 №1947038 
>>1944465
Комбо говноеда.
Аноним 20/02/21 Суб 08:30:36 #198 №1947052 
>>1947028
Только вот во вью с массивами реактивность хуй пойми как работает
Аноним 20/02/21 Суб 08:31:32 #199 №1947053 
>>1947052
Конечно там одна магия
Аноним 20/02/21 Суб 10:42:39 #200 №1947107 
Кто занимался менеджментом памяти в браузере?
Допустим, пустая вкладка у меня в хроме ест 40 мегабайт (смотрю память по shift + esc). Если я создаю массив из миллиона строк, память вкладки прыгает к 200 мб. Если я через консоль чищу этот массив, память быстро возвращается к изначальным 40 мегабайтам.

Но если я заполняю массив не миллионом строк, а миллионом элементов (document.createElement('div'), например), при этом даже не вставляя их в DOM, то после чистки массива память с 450мб падает только до 120. То есть референсы почищены, а утечка памяти в 80 мб откуда-то взялась.

Это какой-то сайд-эффект от создания DOM-элементов?
Аноним 20/02/21 Суб 10:45:07 #201 №1947108 
>>1947107
Вообще в хроме вроде есть профайлеры памяти, поищи что-нибудь про них. А нахрена тебе миллион элементов?
Аноним 20/02/21 Суб 10:48:59 #202 №1947109 
>>1947108
У меня просто довольно жирное SPA, и я хочу, чтобы даже через несколько часов вкладка не делалась "тяжёлой".
Аноним 20/02/21 Суб 11:02:34 #203 №1947114 
>>1947107
Используй профайлер, он и покажет куда 80 мб делись.

Аноним 20/02/21 Суб 11:24:26 #204 №1947130 
>>1947109
> попробовал я как-то, значит, загрузить в ethercalc файл на сотню страниц...
Аноним 20/02/21 Суб 13:40:26 #205 №1947288 
>>1947007
>>1947015
бамп, помогите пожалуйста
Аноним 20/02/21 Суб 13:47:44 #206 №1947298 
>>1947288
Твой вопрос сформулирован некорректно. Никто не понимает, чего ты хочешь.
Аноним 20/02/21 Суб 13:52:26 #207 №1947303 
>>1947298
Понял. Перформулирую позже и повторю пост.
Аноним 20/02/21 Суб 14:19:23 #208 №1947330 
> думал, что знаю программирование более-менее, начал решать задачку на кодварс
> узнаю про какие-то regular expressions и обтекаю
Аноним 20/02/21 Суб 14:26:47 #209 №1947340 
>>1947330
Даже недельный вкатила знает про рег из леарнжс, сочувствую
Аноним 20/02/21 Суб 14:28:11 #210 №1947343 
>>1947340
> леарнжс
так это в 3 части написано, чел...
Аноним 20/02/21 Суб 14:28:11 #211 №1947344 
>>1947330
>в программировании невозможно знать всё, поэтому вам нужно спокойно относиться к тому что вы чего-то не знаете

Бьёрн Страуструп. Расслабься и кодь на здоровье, пошли нахуй всех душных мудаков которые тебя расстрелять готовы за то что ты забыл как называется какая-нибудь хуйня. Я вот кодингом для удовольствия занимаюсь, не вкатываюсь, нихуя пишу что хочу. Бегаю по вашим тредам то сайты пилю, то прикладное по, что мне надо то и пилю. Книги читаю, но в основном наискосок и точечно по содержанию то что мне нужно знать именно в данный момент. И ты также делай, рекомендую.
Аноним 20/02/21 Суб 14:30:25 #212 №1947349 
>>1947344
>в программировании невозможно знать всё,
Не ну не знать как регулярки работают этож пиздец. Хотя для совсем уж вкатуна простительно.
Аноним 20/02/21 Суб 14:34:54 #213 №1947357 
>>1947007
Во-первых, что за селектор такой "thread-links" без префикса id или класса? У тебя создан кастомный тег <thread-links>? Что-то сомневаюсь.
Во-вторых, судя по {% шаблонам %}, это не чистый HTML, а какая-нибудь джанга. Если там всё рендерится на сервере, JS тебе для твоей задачи вряд ли нужен.

А вообще, да, сформулируй вопрос получше.
Аноним 20/02/21 Суб 14:36:00 #214 №1947360 
>>1947357
Я к сожалению в вебе никогда не писал даже не понял что ты написал. Спасибо, анон, я подумаю и сформулирую вопрос получше
Аноним 20/02/21 Суб 14:37:02 #215 №1947361 
Capture6.PNG
>>1947357
Это готовый код, не я его писал. Там нужно только отредактировать то что находится в самой левой скобке из-за этого элемент один не там находится где должен
Аноним 20/02/21 Суб 14:47:54 #216 №1947375 
Посоны, сейчас надо было сделать кастомный чекбокс и я просто без задней мысли засунул вместо него свгшку. С одной стороны я понимаю что это ебанутое решение, а с другой не могу обосновать почему. Поясните плз. То есть код выглядит примерно так
<ng-container [ngSwitch]="true">
<ng-container ngSwitchCase="state === 'checked'">
<img src="/images/checkbox-checked.svg">
</ng-container>
<ng-container
ngSwitchDefault>
<img src="/images/checkbox.svg">
</ng-container>
</ng-container>
Аноним 20/02/21 Суб 15:02:34 #217 №1947390 
>>1947361
В левой скобке находится строка-селектор. Почитай про css-селекторы, что это такое.
Навскидку попробуй: $('#thread-links') или $('.thread-links')
Аноним 20/02/21 Суб 15:08:21 #218 №1947395 
>>1947375
Управление с клавиатуры проебано, ControlValueAccesor проебан. Svg через img. Switch(true).

0/10
Аноним 20/02/21 Суб 15:10:18 #219 №1947397 
>>1947395
>Svg через img
А чем тебе это то не нравится?
Аноним 20/02/21 Суб 15:12:09 #220 №1947400 
>>1947397
+ checkbox-checked-ff0000-30_light-red.svg
Аноним 20/02/21 Суб 15:12:15 #221 №1947401 
>>1947390
да я вчера уже пробовал и с решёткой и с точкой не сработало...
Аноним 20/02/21 Суб 15:12:54 #222 №1947402 
>>1947344
ну да стараюсь не отчаиваться анончело
Аноним 20/02/21 Суб 15:56:52 #223 №1947443 
>>1947390
заработало через # но с контейнером div родительским, а в список включиться на удаётся, но спасибо вам аноны, я более менее освоился почитал про css селекторы, думаю дальше сам уже справлюсь.
Аноним 20/02/21 Суб 17:20:22 #224 №1947547 
Используют ли в продуктовой разработке готовый дизайн(materialize, bootstrap и тд) или пишут чисто свою верстку и стили?
Аноним 20/02/21 Суб 17:48:03 #225 №1947593 
await тормозит только выполнение той функции в которой находится? Повстречав его выполнение кода выпрыгивает из функции и идет дальше по скрипту?
Аноним 20/02/21 Суб 17:55:51 #226 №1947602 
Есть li на 200 элементов, в каждом есть картинка как сделать что бы при клике на картинку открывалась модалка (react-modal)? На каждый li вешать модалку с обработчиком? Бред же
Аноним 20/02/21 Суб 17:56:20 #227 №1947603 
Поясните за axios и redux-thunk. Разве из коробки жс и редакс без них не юзабельны?
Аноним 20/02/21 Суб 18:02:55 #228 №1947614 
>>1947593
Выполнение кода никуда не "выпрыгивает", await - это ожидание, и делает он ровно то, что написано - ждет.
Аноним 20/02/21 Суб 18:06:24 #229 №1947619 
>>1947602
>На каждый li вешать модалку с обработчиком? Бред же
Почему бред? Модалку конечно нужно в одном месте держать, но обработчик у каждого элемента будет свой, это абсолютно нормально. То есть что-то вроде:
<li>onClick={() => showImageModal(image)}</li>
Где showImageModal - это какая-то функция, приходящая из родителя.
Аноним 20/02/21 Суб 18:07:41 #230 №1947620 
>>1947547
Если придумаешь причину, по которой готовое тебе не подходит, то пиши свое. Иначе бери готовое.
Аноним 20/02/21 Суб 18:13:32 #231 №1947625 
>>1947614
https://jsfiddle.net/ctygwLnd/1/

Ждет только внутри асинк функции, то что следом после нее сразу начигает выпрлняться, и только потом то что внутрии функции после аваита.
Аноним 20/02/21 Суб 18:22:06 #232 №1947635 
>>1947602
Что если делегировать событие на ul и по клику обрабатывать на какую лишку был клик ?
Аноним 20/02/21 Суб 18:42:41 #233 №1947663 
>>1947620
Окей. А если берут готовое - часто приходится редачить компоненты готовые? Или могут использовать прям предложенные стили из фрейма?
Аноним 20/02/21 Суб 18:59:37 #234 №1947685 
>>1947547
Если это какой-то админский ресурс, то берут готовое решение, если для массового пользователя, то чаще свои компоненты пилят, иногда на основе тех же material, bootstrap и т.д.
Аноним 20/02/21 Суб 19:04:37 #235 №1947692 
>>1947685
Ну проект внутренний, для сотрудников, скажем так. Админка тоже нужна будет, поэтому я думаю не париться и взять какой нить react-admin или аналогичное что то на vue.
Аноним 20/02/21 Суб 19:19:12 #236 №1947707 
>>1947625
>Ждет только внутри асинк функции, то что следом после нее сразу начигает выпрлняться
>внутри асинк функции
>асинк
Значение-то знаешь?
Аноним 20/02/21 Суб 19:19:12 #237 №1947708 
>>1947663
Теье самому насколько приятно на суржике разговаривать?
Аноним 20/02/21 Суб 19:21:08 #238 №1947710 
>>1947663
>часто приходится редачить компоненты готовые?
Примерно между "никогда" и "очень часто". Чтобы точнее сказать, нужно дождаться провидца, который по постам тебе нагадает, насколько часто надо будет.
Аноним 20/02/21 Суб 19:52:19 #239 №1947735 
>>1947692
Самая мякотка начинается когда делаешь на готовом, а потом говорят "хорошо получилось, сычушь, пора бы и кастомный интерфейс запилить"
Аноним 20/02/21 Суб 20:02:36 #240 №1947749 
Правильно я понимаю что мне в работе фронтовиком и половины контента с лёрнжаваскрипт не пригодится? На каком этапе можно начинать учить react? И поясните какие новшества привносит ts и на каком этапе стоит учить и его.
sageАноним 20/02/21 Суб 20:24:58 #241 №1947773 
>>1947749
После того, как сделаешь свой мини реакт.
Аноним 20/02/21 Суб 20:31:41 #242 №1947782 
>>1947773
А что не интерпретатор сразу? Каким хуем я должен создавать свой реакт не зная нихуя о реакте?
Аноним 20/02/21 Суб 20:57:04 #243 №1947817 
>>1947602
Для такого случая как раз делегацию событий придумали, но Абрамов посчитал, что это слишком сложно для макак. Так что будешь костылить колбэк в родительском компоненте, который пропсом передаётся потомку, а тот уже через обработчик событий подставляет нужные аргументы в колбэк.
sageАноним 20/02/21 Суб 21:16:58 #244 №1947848 
>>1947749
Пригодится 80% всего что там написано. Не пригодятся только некоторые моменты, например которые описаны в конце первой главы, в разделе разное.

Вот https://ru.code-basics.com/languages/javascript в принципе список той базы, плюс там же можно ее практиковать. Рякт учить только базы(2 главы кантора - должен знать основы(1 глава), и ДОМ события(2я глава)). После прыгаешь на рякт, когда на рякте напишешь апишку, уже можно щупать ТС и перепиливать апи на тс.
Аноним 20/02/21 Суб 21:31:31 #245 №1947857 
Хьюстон, we have a problem. После получения response от httpclient (anglular) и не могу пушить данные в другой компонент, пишет undefined. Я догадываюсь, что данные пушатся до их получения, как тогда делать типо функции then?
Аноним 20/02/21 Суб 23:27:57 #246 №1947960 
>>1947857
>Я догадываюсь
Сначала проверь, потом читай rxjs
Аноним 21/02/21 Вск 00:16:03 #247 №1947987 
rxjsпочитал.jpg
>>1947960
>rxjs
Почитал, проверяй
Аноним 21/02/21 Вск 00:26:56 #248 №1947998 
>>1947603
Юзабельны. Axios и redux-thunk это не необходимая часть редакса. Redux-thunk это типа такой middleware прослойка позволяющая использовать axios с async await в экшенах.
Аноним 21/02/21 Вск 00:29:12 #249 №1948001 
>>1947707
асин хронно
Аноним 21/02/21 Вск 00:49:52 #250 №1948021 
>>1947987
Какие же линуксоиды реддитобляди жсеры тупые пиздос.
Аноним 21/02/21 Вск 01:27:02 #251 №1948051 
mobx
Аноним 21/02/21 Вск 05:07:22 #252 №1948075 
>>1948051
redux
Аноним 21/02/21 Вск 07:19:06 #253 №1948085 
Ребятки решил понюхать этот ваш styled components, прикольно только вот вопрос норм ли юзать паралельно ванильные стили в виде scss файла?
Аноним 21/02/21 Вск 08:22:50 #254 №1948099 
>>1948075
>>1948051
Zustand
Аноним 21/02/21 Вск 08:58:08 #255 №1948106 
Что-то я в смятении. На работе дают такие задания, от которых хочется просто встать и уйти. Например, надо перевести одну гигантскую страницу из джанго-шаблонов на реакт. Самой этой страницы в рабочем состоянии нет, в джанго-шаблоне несколько десятков переменных, некоторые из них откровенно "волшебные". В итоге я просидел неделю - и даже не понял в точности, ЧТО я должен повторить на реакте.
Стаж в JS десять лет, к слову.
Аноним 21/02/21 Вск 09:07:02 #256 №1948107 
>>1948085
Зачем?
Аноним 21/02/21 Вск 09:35:34 #257 №1948114 
Ребят, а есть смысл нанимать ментора чтоб помог отшлифовать знания по реакту учитывая что я знаю базу и продвинутые темы настолько это возможно будучи новичком?
Аноним 21/02/21 Вск 09:49:22 #258 №1948122 
>>1948114
Нет
Аноним 21/02/21 Вск 09:51:21 #259 №1948123 
image.png
>>1946462
Пиздос я 2 дня не могу понять что за хуйня происходит и только сейчас до меня дошло. У меня некоторые компоненты лежат внутри одного и того же файла. Но я сделал тупейшую глупость и держал инициализацию дочерних компонентов внутри родительских. И разумеется когда у родителя обновлялся стейт, сбрасывались стейты и дочерних, потому что они не просто обновлялись, а сам компонент пересоздавался заново. Какая беспросветная тупость с моей стороны. Но как я рад что смог найти причину проблемы
Аноним 21/02/21 Вск 12:09:56 #260 №1948208 
>>1947987
А как же белые жизни?
Аноним 21/02/21 Вск 12:21:47 #261 №1948219 
>>1948208
Расист угнетатель насильник. Все с тобой понятно. Мы вам не перезвоним
Аноним 21/02/21 Вск 12:35:30 #262 №1948233 
>>1947987
Неужели не понятно, что пендосы сейчас находятся в положении послемайданных хохлов, которые вынуждены клясться в лояльности Правому сектору/BLM просто чтобы не быть уничтоженными.

Посмотри на их команду. Видишь там хоть одного негра? И я не вижу. Это же явное сборище трампистов-ватников, морды их просят люстрационного сапога.
https://rxjs-dev.firebaseapp.com/team?group=Core%20Team
Аноним 21/02/21 Вск 12:41:12 #263 №1948235 
>>1948233
>клясться в лояльности Правому сектору
Хуя промытая жертва телевизора. Кроме чустников правого сектора хоть кто-то вообще знает в Украине о его существовании?
Аноним 21/02/21 Вск 12:44:09 #264 №1948238 
>>1948235
>Хуя промытая жертва телевизора.
Я перебрался в РФ в 2019-м году, до этого почти десять лет жил под Киевом. Правый сектор после майдана использовался именно для запугивания пересичных хохлов, на Донбассе они почти не воевали.
Аноним 21/02/21 Вск 12:49:46 #265 №1948243 
>>1948238
p.s. Но суть не в них, конечно. Суть в том, что сейчас в США есть "движения", которым нельзя сопротивляться никак. БЛМщиков с нелицеприятной стороны даже обсуждать на кухне довольно опасно.
Аноним 21/02/21 Вск 12:57:53 #266 №1948255 
Братцы, помогите плиз перенести этот простейший скрипт для Excel в JS для GoggleSheets, суммирующий числа в строке, игнорируя буквы и т.д.:

Function fff(dan As Range) As Variant
Dim i
Dim pri
For i = 1 To Len(dan)
If Mid(dan, i, 1) Like "[0-9]" Then pri = Mid(dan, i, 1) Else pri = " "
fff = fff & pri
Next
fff = Application.Trim(fff)
fff = Application.Substitute(fff, " ", "+")
fff = Evaluate(fff)
End Function
Аноним 21/02/21 Вск 13:00:43 #267 №1948261 
>>1948243
>нелицеприятной
Значение знаешь?
Аноним 21/02/21 Вск 13:06:40 #268 №1948269 
>>1948255
> JS для GoggleSheets, суммирующий числа в строке, игнорируя буквы
Всё что могу тебе бесплатно сделать.
> 'sdf23f123d23das'.match(/\d/g).reduce((a, e) => +a + +e)
Аноним 21/02/21 Вск 13:07:39 #269 №1948272 
>>1948255
ты напиши это в псевдокоде лучше, тут мало кто бейсик знает или что это такое
Аноним 21/02/21 Вск 13:09:52 #270 №1948275 
>>1948269
неплохо, кстати
Аноним 21/02/21 Вск 13:21:04 #271 №1948288 
>>1948269
Спасибо! А что с этим делать?
Аноним 21/02/21 Вск 13:31:31 #272 №1948310 
>>1944376 (OP)
А где тестовые задания на миддла достать, кто знает может? Хочу попрактиковаться и поднять ЧСВ прежде чем претендовать на 250+к в ДС. Сам миддл в одной известной галере, с impostor syndrome, потому что пишу копируя код из старых проектов или стэковерфлоу.
Аноним 21/02/21 Вск 13:42:12 #273 №1948325 
>>1948106
>просидел неделю - и даже не понял в точности, ЧТО я должен повторить на реакте
Опиши всю свою боль тех.лиду, пусть ставит задачи точнее. Это же очевидно, не?
>На работе дают такие задания, от которых хочется просто встать и уйти
-регулярно пересматриваешь резюме
-регулярно откликаешься на интересные предложения, может что и выгорит
Ключевое слово - РЕГУЛЯРНО.

Аноним 21/02/21 Вск 13:58:54 #274 №1948345 
>>1948325
>Стаж в JS десять лет
Зачем помогать долбоёбу?
Аноним 21/02/21 Вск 14:05:56 #275 №1948348 
>>1944387
>не думаю, что у тебя хватит денег для оплаты хотя бы 10 минут моего времени
Ты уже их потратил, отвечая на этот пост.
>Мог бы конечно придумать что то похожее, сгенерировать набор данных и написать рабочий код
Да, мог бы реально блеснуть знаниями, вместо маняфантазий о собственной охуенности, но, сам видишь, на что ты реально потратил 10 минут.
Аноним 21/02/21 Вск 14:11:05 #276 №1948354 
>>1948310
>А где тестовые задания на миддла достать
хуй знает, интернет еще не изобрели, поспрашивай у знакомых мож кто нить переписывал на листочек с собесов
Аноним 21/02/21 Вск 14:12:13 #277 №1948355 
>>1948345
Просто реально такое бывает когда сидишь долго на одном месте и привык действовать по определенным шаблонам. Что нам кажется очевидным, для других порой откровение. Я проходил через такое.
Аноним 21/02/21 Вск 14:12:28 #278 №1948356 
нао чтобы str заканчивался на ending

function solution(str, ending){
let regExp = new RegExp(ending + '$');
return regExp.test(str);
}

solution('abcde', 'cde') //true
solution('abcde', 'abc') //false

> SyntaxError: Invalid regular expression: /:-($/: Unterminated group

что ему надо блять
Аноним 21/02/21 Вск 14:17:33 #279 №1948360 
Алгоритмы не нужны для 99,999% макак. Что нужно из хард скилов большинству макакичей для непрерывного росту и преуспеяния на поприще погромоуирования, но на что большинство срало с самой высокой пальмы
1) Фаулер, дядя Боб, Эванс и др
2) Тестиравование
3) Девопус, но тилько для самообслуживания
Аноним 21/02/21 Вск 14:21:08 #280 №1948363 
>>1948356
endsWith
откуда вы лезете блять?
Аноним 21/02/21 Вск 14:21:41 #281 №1948365 
>>1948354
>поспрашивай у знакомых
Вот я и спрашиваю, здесь же все мои друзья.
>мож кто нить переписывал на листочек с собесов
Скиньте, если удалось сфоткать.
Аноним 21/02/21 Вск 14:26:41 #282 №1948367 
>>1948355
Т.е. ты тоже долбоёб. Вот вы и встретились.
Аноним 21/02/21 Вск 14:29:27 #283 №1948371 
>>1948363
спс
> откуда вы лезете блять?
я чё должен наизусть все методы знать?
Аноним 21/02/21 Вск 14:30:57 #284 №1948373 
Братцы, как перечисление поставить в формуле?
=SUBSTITUTE(D24 ; 2,4 ; 5)
Хочу цифры 2 и 4 заменить на 5
Аноним 21/02/21 Вск 14:39:20 #285 №1948379 
>>1948373
const oldValue = element.value;
const newValue = 5;
if (oldValue === 2) {
element.value = newValue
}
if (oldValue === 4) {
element.value = newValue
}
Аноним 21/02/21 Вск 14:43:31 #286 №1948383 
>>1948379
Спасибо, брат. Но я думал, как перечисление без скрипта впихнуть. Пойду экселевиков искать в /s/ наверно.
Аноним 21/02/21 Вск 14:50:42 #287 №1948385 
>>1948383
Нагуглил:
=SUBSTITUTE(SUBSTITUTE(D24 ; 2; 5); 4; 5)
Аноним 21/02/21 Вск 15:10:59 #288 №1948400 
Нужно заполнять некую веб-форму на чужом сайте.
Как это сделать своим скриптом?

Например, скрипт рисует всплывающее окно с textarea, куда я вставляю блок текста, нажимаю кнопку, скрипт парсит текст, заполняет нужные поля поля оригинальной формы, и отправляет её.

Как организовать такое?
Сам скрипт я написать могу, естественно.

А можно ли такое делать с помощью какого-либо веб-клиента, чтобы полностью автоматизировать заполнение? Капчи там нет.



Аноним 21/02/21 Вск 15:19:22 #289 №1948409 
Бля бывают моменты когда нихуя не выходит и хочется дропнуть и ит это ни твое. Потом часа 2 отдыха и проблема рашается, это вообще нормально?
Аноним 21/02/21 Вск 15:24:57 #290 №1948415 
>>1948409
Да, это нормально.
Это защитная реакция от перегрузки.
Аноним 21/02/21 Вск 15:35:50 #291 №1948425 
>>1948415
А как лучше отдохнуть?
Аноним 21/02/21 Вск 15:37:57 #292 №1948430 
>>1948425
Поиграть в футбик с кентами
Посмотреть аниме
Аноним 21/02/21 Вск 15:52:40 #293 №1948451 
>>1948409
Нет. Устаешь, разумеется. Но от усталости раздражения и неприязни к области и тем более к изучению не возникает. Если теья что-то провоцирует на эмоцию триггерющую "дропнуть обучение" это звоночек.


Любознательность и пытливость не может исчезать в областях, к которым ты лежишь, а не силишься.
Аноним 21/02/21 Вск 15:55:44 #294 №1948455 
>>1948425
Поспать.
Погулять на свежем воздухе.
Отвлечься на что-то другое.

>>1948400
Вопрос снимается.
Там реально пиздецовый html, вместо кнопок - таблицы в дивах (лол), и прочая жесть. Это что-то типа Java Server Faces или какая-то подобная лютая хуйня, с кучей скрытых зависимостей и неявных скриптовых привязок. Т.е. разбираться в этой хуите слишком долго и дорого.
Аноним 21/02/21 Вск 15:57:21 #295 №1948457 
>>1948451
>это звоночек
Ай, не пизди, да.
Это именно нормальная реакция на усталость.

Таких реакций не возникает только на любимую девушку, и то временно.
Аноним 21/02/21 Вск 16:20:44 #296 №1948475 
>>1948457
Ты сам подтвердил мои слова,подчеркуюнув разницу между ЛЮБИМЫМ и НЕ ЛЮБИМЫМ делом. О чем я писал.

Если ты устаешь от дела так, что оно тетя раздралает, значит ты это дело не любишь.
Аноним 21/02/21 Вск 16:39:53 #297 №1948507 
>>1948475
Ты либо троллишь, либо дурачок.
Какой вариант тебе нравится больше?
Мне не нравится ни один, поэтому, писать тебе я больше не буду.
Аноним 21/02/21 Вск 17:08:51 #298 №1948533 
Очень интересно конечно слушать истории про ЛЮБИМОЕ дело в контексте ЖС треда.
Аноним 21/02/21 Вск 17:11:42 #299 №1948536 
>>1948533
А что не так?
Аноним 21/02/21 Вск 17:14:52 #300 №1948539 
>>1948536
Пиздуй ковырять легаси на жиквери, а если от этого у тебя не горят глаза, то ты просто не настоящий программист.
Аноним 21/02/21 Вск 17:15:01 #301 №1948540 
>>1944376 (OP)
Хочу написать расширение под хром, которым можно будет скрывать комментарии от всяких долбаёбов на ютубе. Выборочно. Что бы нажал на кнопку напротив коммента и в других видео эти дегенераты потом не отсвечивали ни под какими видео. Из всего, что я нашёл был только плагин вообще отрубающий комментарии под видео полностью, без возможности включить их обратно, только если удалить плагин полностью.

Но в кодинге я полный ноль, лет 10 пытался осилить, но было скучно. Посоветуйте с чего начать, плиз.
Аноним 21/02/21 Вск 17:17:35 #302 №1948544 
Что делать если нужно чекнуть разрешение экрана средствами ЖС во многих компонентах? Где можно чекнуть его один раз и раздать всем? Так вообще стоит делать или пусть каждый компонент сам чекает разрешение? Такие вещи стоит в стор пихать?
Аноним 21/02/21 Вск 17:17:37 #303 №1948545 
>>1948539
Такие проекты - редкость.
Аноним 21/02/21 Вск 17:20:37 #304 №1948547 
>>1948540
В шапке ссылка на гайд. Я и сам думаю начать вкатываться в практику с расширений
Аноним 21/02/21 Вск 17:29:39 #305 №1948559 
>>1948371
>я чё должен наизусть все методы знать?
1. С опытом да, ты будешь знать большинство методов, по крайней мере факт что они есть.
2. Ты должен понимать, что нужно сначала посмотреть нет ли случайно такого метода уже в стандартной библиотеке/ramda.js, а потом уже хуярить свои костыли. На это уйдет всего пара минут.
Аноним 21/02/21 Вск 17:32:36 #306 №1948563 
>>1948533
А что удивительного? На ДЖС куча модного, трендового, интересного.

При желании, и джиквери легаси можно превратить в интересный таск по организации кода и логики. Ты ведь понимаешь, что проблема не в самом джиквери, библиотечка то норм, проблема в индусском подходе к программированию.
Аноним 21/02/21 Вск 17:34:09 #307 №1948564 
>>1948559
>нужно сначала посмотреть нет ли случайно такого метода уже в стандартной библиотеке
Для такого и существуют все эти оверфловы и чатики, если конечно ты не предлагаешь ПРОСТ взять и всю доку выучить нахуй целиком
Аноним 21/02/21 Вск 17:37:43 #308 №1948566 
>>1948564
Да все эти строчки регулярно крутятся и всё помнится, какие оверфловы. Если ты такой склерозник, то ставишь точку после строки и смотришь варианты иде какие есть подходящие по смыслу.
Аноним 21/02/21 Вск 17:38:39 #309 №1948567 
1312321.PNG
22342323.png
>>1948564
Ну я про это и говорю, вопрос чела про string ending это первая ссылка в гугле, а он костыли уже начал писать.

Тут даже гуглить не надо, достаточно в редакторе написать строчку, поставить точку и увидеть все методы которые можно вызвать, пикрелейтед.

Аноним 21/02/21 Вск 17:55:17 #310 №1948590 
>>1948540
Это зависит от того, пихает ли гугол айдишники, привязанные к аккаунтам, в посты или нет. Скорее всего нет и ты только сможешь скрывать по постам, типа как на дваче. Можно конечно парсить имена и скрывать их, или там по файлу в аватарке скрывать, или по определённым ключевым словам, но в целом это не будет работать 100%.
>Но в кодинге я полный ноль, лет 10 пытался осилить, но было скучно. Посоветуйте с чего начать, плиз.
В шапке на mdn есть гайд для вкатышей, там как раз разжёвывают html/css/js, как раз то что тебе нужно для реализации кнопки скрывания.
Аноним 21/02/21 Вск 17:56:38 #311 №1948591 
>>1948544
Тебе разрешение экрана нужно или вьюпорта?
Аноним 21/02/21 Вск 17:58:58 #312 №1948593 
>>1948591
Окна браузера в общем. То, что чекается к примеру
window.matchMedia("(max-width: 800)").matches
Просто не знаю, это нормально такое к примеру раздавать через стейт менеджер? Куда это можно засунуть, прямо в стор?
Аноним 21/02/21 Вск 18:10:32 #313 №1948602 
>>1948593
Зачем тебе пихать это в стор, если данные уже хранятся в глобальном объекте?
Аноним 21/02/21 Вск 18:16:53 #314 №1948607 
>>1948559
Если честно у меня на кодварсе тема такая с регулярными выражениями, нахождение подстрок, поэтому надо было через велосипед делать. От того, что я тупа метод найду, больше понимать не стану, а цель именно такая
Аноним 21/02/21 Вск 18:22:39 #315 №1948609 
Если я еще хоть один раз увижу for вместо map/reduce...
Аноним 21/02/21 Вск 18:25:01 #316 №1948611 
>>1948590
Проверил через f12 - нашёл только ссылку на канал комментатора. Сойдёт?
Аноним 21/02/21 Вск 18:35:04 #317 №1948615 
photo2020-12-1018-28-42.jpg
Бандиты, выручите плиз

Есть табличка:
| плата за час | <input type=text> объем | 1 день | неделя |
сообственно нужно на jquery по вводу в input брать значение из предыдущего <td> умножать на введенную в инпут цифру и выводить в следующий <td>

Если кто поможет написать за спасибо - с меня спасибо.
Аноним 21/02/21 Вск 18:46:32 #318 №1948624 
>>1948602
Это хороший вопрос для размышления. Я об этом не думал. Я подумаю
Аноним 21/02/21 Вск 18:55:51 #319 №1948626 
>>1948615
Никто не будет тебе ничего писать задаром. Алсо подобную хуйню можно и самому разобраться за вечер как сделатью
Аноним 21/02/21 Вск 19:05:27 #320 №1948627 
>>1948626
Блядь я в питон тредах народу ебаные сотни раз писал задаром и не пиздел, а куда не ткнусь - что к вам-жс-пидорасам, что к свифтоебам - так элементарную дрисню на 3 строчки все ленятся помочь написать
Хуею просто. А сколько б ты за эту хуйню попросил? 0.2 биткоинов хватит?
Аноним 21/02/21 Вск 19:09:30 #321 №1948629 
>>1948627
и да, ясен хуй что я не зная жса вообще, за вечер и сам напишу, но сука если тебе вломы подсказать околопсевдокодом как эту хуйню по-человечески высрать
input.onkeypress {
$current_td = selector(:nth-child())
price = selector(:nth-child(-1).value()
1day = selector(:nth-child(+1)).value(price*24)
}

то ну пиздец ты конь конечно
Аноним 21/02/21 Вск 19:35:50 #322 №1948637 
Нихуя не пойму если дергаю из стейта 3 поля 3 раза ререндер происходит если 4 то 4, какого хуя?
Аноним 21/02/21 Вск 20:11:08 #323 №1948653 
>>1948627
Чел тут ценятся вопросы про теорию, общие вопросы.
Нигде тебе не будут отвечать кучей строк кода, что бы решить твою проблемку, тут у каждого второго куча таких личных вопросов. Напомню - у профессионалов ценится самостоятельное умение находить ответ на вопрос, гуглить.
Будь сильнее и умнее.
Аноним 21/02/21 Вск 20:39:50 #324 №1948663 
>>1948611
Достаточно уникально.
Базовые классы выглядели бы так: https://codepen.io/Jumpy_Bunny/pen/XWNeJLv
Как из расширения получить доступ к дому - это уже надо доку к апи расширений читать.
Но условно секция с камментами - один родительский элемент с кучей дочерних элементов. Цель расширения - прикрепить кнопку "Скрыть" к каждому комменту. В зависимости от реализации скорее всего придётся рекурсивно пробегаться по элементам, чтобы кнопки налепить, так как на трубе есть вложенность.
При клике по кнопке "Скрыть" должно появлятся поле для ввода текста с указанием причины и при подтверждении ссылка на канал, тело поста и причина скармливаются в инстанс BlockedUser, который идёт аргументом в UserBlockController.addUser().
Самая ёбля будет со сравнением списка комментариев со встроенным списком. Так как труба грузит их клиентскоим скриптом, как таковых "стадий" в загрузке нет, так что скорее все придётся пердолиться с Proxy/таймерами/листенерами, иначе работа скрипта будет выглядеть как:
- Комментарии загружаются.
- Потом некоторые из них пропадают.
Плюс ещё при прогрузке новых комментариев тоже нужно запускать проверку.
Аноним 21/02/21 Вск 21:10:12 #325 №1948681 
Может ли styled components вызывать лишние рендеры?
Аноним 21/02/21 Вск 22:18:24 #326 №1948721 
>>1948681
Вряд ли. Но производительность все равно сажает знатно.
Аноним 22/02/21 Пнд 00:26:50 #327 №1948767 
>>1948663
Нахуя нужны классы, если можно написать 3 функции?
Аноним 22/02/21 Пнд 00:58:15 #328 №1948787 
>>1948767
Так классы и есть функции.
Аноним 22/02/21 Пнд 01:00:33 #329 №1948788 
js function.png
>>1948787
Аноним 22/02/21 Пнд 01:02:51 #330 №1948792 
>>1948787
Под функциями я подразумеваю функции в классическом понимании, а не "методы" с implicit переданным this. Подноготную JS и сахарок я знаю.
Аноним 22/02/21 Пнд 01:21:09 #331 №1948799 
>>1948792
Так в классическом понимании функций в жс нет, только объекты. Больше ничего.
Есть еще примитивы, но их можно тоже рассматривать в качестве синглтон объектов, потому как они боксятся, а сделаны разумеется для производительности. (тем более что сейчас ничего не мешает у примитивных добавить в цепочку прототипов прокси объект, отлавливащий сообщения, типа присваивания, и реалиховать поведение прототипов как полноценных объектов, но это ни к чему. проще воспринимать их как синглтоны. когда надо, любой примитив можно обернуть в полноценный независимый объект).
Так. Короче только объекты.
Все объекты делятся на 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++ это больше структурное программирование, нежели объектное. Объектное программирование не может существовать без динамической среды. Это противоречит самому понятию объекта. А динамическое программирование это слишком сложна и непанятна. И как бы не старались с пеной у рта фанатики кричать про низкий порог входа - низкий он именно что для входа, а не для всего остального. Модификация программ в рантайме всегда было уделом креативно мыслящих людей. Для большинства это слишком сложный уровень высокой абстракции.
Аноним 22/02/21 Пнд 02:53:04 #332 №1948827 
>>1948721
>производительность все равно сажает знатно
Пруфы?
Аноним 22/02/21 Пнд 04:36:33 #333 №1948846 
>>1948799
JS такой язык, что чем меньше фич ты из него используешь, тем поддерживаемый код получается. Главная сила языка это функции (можешь называть их callable объектами) и возможность использовать их как значения, что вкупе с замыканиями позволяет писать очень гибкий код всего лишь несколькими средствами. Объекты должны рассматриваться только как хешы "ключ-значение", без каких-либо методов с this'ами внутри. Symbol, Proxy и другие фичи это излишние лоулвльные абстракции.

Писать продакшн код в подобном "динамическом" стиле с переопределением прототипов никто не даст, потому что это неподдерживаемая хуйня. Абстрагирование от лоулвла языка как раз для того и делается, чтобы код был более надежным и легкочитаемым. Кроме того, предметная область JS просто слишком высокоуровнева, нет смысла дрочить метапрограмминг для обработки клика по кнопке или редьюса стейта.

Но с пастой можно согласиться в том, что сейчас, к сожалению, зумерам нужно чтобы было "панятна", но только не в плане "просто выражать комплексные абстракции", а в плане буквально простоты написания кода, им нужны простые абстракции.

Вон редакс уже "сложный", зачем понимать разделение на экшны и редьюсеры, если можно просто в мувисерчере переменные присвоить как в МобХ, и норм.
Аноним 22/02/21 Пнд 05:09:23 #334 №1948849 
>>1948846
>вкупе с замыканиями
С захватом переменных хотел сказать?
>нет смысла дрочить метапрограмминг для обработки клика по кнопке
Конкретно в ситуации с ютубокомментами скорее всего придётся дрочиться с метапрограммированием, так как желательно неугодные посты скрывать до добавления в дом, ну или хотя бы до рендера. И кнопки соответственно не добавлять в неугодные посты.
Аноним 22/02/21 Пнд 06:32:58 #335 №1948854 
аноны, есть ли способ отключить срабатывание эвентов для функции? например, мне нужно на html плеере вызвать .play(), при этом не стригерив эвент
Аноним 22/02/21 Пнд 09:16:44 #336 №1948881 
>>1948624
>>1948544
В общем тут дело в чем, реакт ведь не будет сам по себе обновлять компонент при ресайзе, что-то должно вызывать ререндер. В моем случае я вешаю эвентлистенер, и когда происходит ресайз, вызывается функция, которая чекает текущее разрешение, и соответственно от этого обновляет стейт и в компоненте происходят условные рендеры. Так вот, дело в том, что такой эвентлистенер вешается сейчас отдельно в каждом компоненте. Можно ли к примеру такой эвентлистенер создать где-то для всех компонентов сразу? Можно ли создать эвентлистенер в сторе и там же держать какую-то переменную, которая говорит, какой шириниы сейчас вьюпорт, типа 1024-1980, и все компоненты будут просто брать только это значение из одного места. Или это может како-то плохо работать?
Аноним 22/02/21 Пнд 09:24:47 #337 №1948884 
>>1948827
Я тестировал, даже issue им писал. По сравнению с тупой сменой класса в sc идет интерполяция здорового шаблона (многократная если активно используешь хелпер css), вычисление какие классы надо добавить и удалить, генерация стилей с префиксами и вставка в style. Пока я не оптимизировал интерполяцию у меня SSR занимал 200 мс где-то, что, конечно, вообще ни в какие ворота.
Аноним 22/02/21 Пнд 09:25:27 #338 №1948885 
Внутри компонента создаю функцию renderPosts которая мапит массив обьектов и передает их в другой компонент, далее renderPosts вызываетс в рендере, это норм? Или нихуя?
Аноним 22/02/21 Пнд 13:25:34 #339 №1949075 
вкатился к вам из джаба треда.
Планирую написать несколько пет проектов потренировать бэкэнд
Джабоскрипт год назад пробовал, реакт пробовал, верстку изучил, вебпак чуть чуть трогал.. Но потом забил на это дело а несколько месяцев назад решил вкатиться в джабу серьезно.
Писать фронтэнд сейчас лень (может потом ближе к отправке резюме подниму тему и освежу память), я сейчас хочу написать несколько пет проекктов по джабе и около нее (может даже без гитхаба) чтоб потренировать спринг секьюрити, спринг дату и прочее говно. Можно конечно использовать постман, но мне хочется с UI. Так вот, вопрос, где бы мне надыбать готового фронтенда с версткой?
С нормальной версткой - хорошо.
С готовыми реакт - компонентами еще лучше, асинхронные запросы, стейт и прочее говно.

Есть ли какие-то ресурсы подобные на уме? Помню давным давно когда только вкатывался подписался на хтмл академи (фу, знаю), у них там рассылочка была с макетами фотошопными. Но мне макеты нахуй не нужны. Мне бы верстку хотя бы.
Аноним 22/02/21 Пнд 13:35:36 #340 №1949078 
>>1948846
двощую
Аноним 22/02/21 Пнд 13:43:25 #341 №1949087 
image.png
>>1949075
>Пет проект
>потренировать секьюрити
>нужна нормальная верстка
Аноним 22/02/21 Пнд 13:47:39 #342 №1949092 
>>1949087
такую я и сам напишу. мне бы что-то типа интернет магазина или бложика.
Хочу опробывать спринг дату, спринг бут, спринг секьюрити, монго, тдд и прочее говно в бою
Аноним 22/02/21 Пнд 13:48:57 #343 №1949095 
>>1948884
> вставка в style
В SC используется CSSOM. Но вообще, да, SC на перфомит, поэтому мы переехали на линарию.
Аноним 22/02/21 Пнд 14:04:37 #344 №1949107 
>>1948799
Низкий поклон, анон, красиво всё сказал. Редко встретишь таких коллег, для многих прокси это некая магия.
Аноним 22/02/21 Пнд 14:23:41 #345 №1949116 
>>1948854
Разумеется, бака.
https://developer.mozilla.org/ru/docs/Web/API/Event/stopPropagation
Аноним 22/02/21 Пнд 14:25:19 #346 №1949119 
>>1944376 (OP)
Где пастебин в шапке ,суки
Аноним 22/02/21 Пнд 14:34:30 #347 №1949130 
>>1948310
https://github.com/Hexlet/ru-test-assignments
Аноним 22/02/21 Пнд 14:34:52 #348 №1949131 
Аноны, я бекенд-макака, ща в своем пет-проекте валандаю клиентский JS, нативный. Пишу на классах, собираю в кучу вэбпаком. Без реакт/вью/ангулар.
Но что меня вымораживает - это именно постоянная связка объектов с объектами DOM. Особенно это геморойно при AJAXе на клиент, и всякие анимации. Создание новых элементов и вставка их в страницу. Выглядит это все косорыло. Хотя я стараюсь по максимуму не тыкаться в DOM, у каждого класса своя привязка к "элементам странички". И из других объектам я к этим "элементам страничики" стараюсь обращаться с помощью объектов которые ими управляют.
Хотелось бы посмотреть JS код хорошо сделанной какой нибудь сложной формы, где много логики, анимаций и AJAX. Что бы пример был , что бы я со своим поделием сравнил.
Аноним 22/02/21 Пнд 14:59:36 #349 №1949141 
>>1949131
>Создание новых элементов и вставка их в страницу. Выглядит это все косорыло.
Думаешь просто так всякие рякты взлетели, которые по сути ещё и шаблонизацию в клиентский код занесли?
>И из других объектам я к этим "элементам страничики" стараюсь обращаться с помощью объектов которые ими управляют.
То есть ты добавляешь прокладку из объектов к объектам? ООП головного мозга как есть.
>Хотелось бы посмотреть JS код хорошо сделанной какой нибудь сложной формы, где много логики, анимаций и AJAX. Что бы пример был , что бы я со своим поделием сравнил.
Какая нахуй анимация в жс, тем более в формах? ЖС максимум что может сделать - переключить классы в элементе в зависимости от событий, а свистелки и перделки задаются стилями.
Аноним 22/02/21 Пнд 16:06:47 #350 №1949188 
>>1949087
сверстал, как боженька
Аноним 22/02/21 Пнд 17:23:15 #351 №1949223 
>>1949141
> ЖС максимум что может сделать - переключить классы в элементе в зависимости от событий, а свистелки и перделки задаются стилями.
Жс может в CSSOM и Houdini API.
Аноним 22/02/21 Пнд 18:06:02 #352 №1949278 
>>1947998
А в чем смысл асинк эвэйта в экшенах? Если у меня триггер редакса происходит в кастомной асинк функции, после получения результата от сервера? Или для того что бы не писать эту кастомную функцию?
Аноним 22/02/21 Пнд 19:04:32 #353 №1949323 
>>1949223
>Жс может в CSSOM и Houdini API.
Которые выполняются на мейнтреде.
Аноним 22/02/21 Пнд 19:11:15 #354 №1949326 
я буду так счастлив когда меня на работу возьмут
Аноним 22/02/21 Пнд 19:17:07 #355 №1949330 
Есть ли смысл юзать react-window или пилить infinity scroll?
Аноним 22/02/21 Пнд 19:19:33 #356 №1949336 
Я сделал функцию перевода с морзе через свитч, комментарии на кодварсе обидно читать
Аноним 22/02/21 Пнд 19:29:37 #357 №1949341 
>>1949336
>>1949336
> перевода с морзе через свитч
नई दिल्ली में मौसम कैसा है?
Аноним 22/02/21 Пнд 19:53:34 #358 №1949361 
>>1949341
мне похую я тесты тупо прошёл и сё, а что за MORSE_CODE[x] ? Не гуглится нихуя
Аноним 22/02/21 Пнд 20:06:22 #359 №1949370 
>>1949141
>То есть ты добавляешь прокладку из объектов к объектам? ООП головного мозга как есть.
Проиграл с дурачины, у которого очевидный, правильный и очень удобный паттерн "я не дергаю элементы на страницы напрямую каждый раз, а прокладываю между ними и остальным кодом стабильный интерфейс, скрывающий детали имплементации" превратился в "ООП головного мозга". Причем триггер произошел именно на слово "объекты", если бы там была "прокладка из функций", то ты бы наверное от счастья описялся, хотя никакой реальной разницы между двумя реализациями не было бы, интерфейс есть интерфейс.
мимо
Аноним 22/02/21 Пнд 20:07:04 #360 №1949371 
>>1949361
а отбой там в условии оказывается написано что добавили таблицу с морзе
Аноним 22/02/21 Пнд 20:28:41 #361 №1949380 
>>1949075
что тебе мешает взять любую популярную реакт/вью либу, сделать пару-тройку форм для твоих кейсов, и кидать условным аксиосом запросы?
Аноним 22/02/21 Пнд 20:55:37 #362 №1949395 
Поясните за реакт, есть массив обьектов если я полностью заменю этот массив новым это не гуд тк все компоненты которые пользуются обьектами из этого массива перерендерятся? Т.е нужно искать нужный элемент в миссиве и мутировать его?
Аноним 22/02/21 Пнд 21:03:46 #363 №1949404 
>>1949395
Так рендеров вообще не будет
Аноним 22/02/21 Пнд 21:03:57 #364 №1949405 
Поясните за реакт. В рабство наниматься не собираюсь, нужно для собственного проекта. Какие у него пререквизиты и насколько сильно нужно задрачивать жс с вёрсткой? Есть ли там что-то, что помогает или упрощает последнюю?
Аноним 22/02/21 Пнд 21:04:13 #365 №1949407 
>>1949395
>если я полностью заменю этот массив новым это не гуд тк все компоненты которые пользуются обьектами из этого массива перерендерятся
В памяти перерендерятся, на экране - нет, если не поменялись. Ничего страшного нет, сто твоих перередеренных туду-листов на производительность не повлияют никак.
>Т.е нужно искать нужный элемент в миссиве и мутировать его?
Реакт о твоем мутировании нихуя не узнает и ничего поменять не сможет.
Аноним 22/02/21 Пнд 21:08:07 #366 №1949410 
>>1949405
Просто бери готовый фреймворк(next какой-нибудь) и иди по гайдам. Без опыта на пустом реакте ты не напишешь ровным счетом нихуя, кроме совсем простейшей хуйни, которую в сто раз легче было бы сделать через обычные серверные html-шаблоны любого бэкенд-фреймворка(джанго, рельсы, ларавель) с минимум жопоскрипта.
Аноним 22/02/21 Пнд 21:13:53 #367 №1949412 
>>1949404
>>1949407
>Реакт о твоем мутировании нихуя не узнае
Придурки ебаные я стейт через action creator или setState(если без редакса) меняю
Аноним 22/02/21 Пнд 21:19:30 #368 №1949416 
>>1949410
Как показывает рынок - реакт одно из самых удачных решений для подобного. Я лучше посижу подольше но сделаю один раз хорошо ибо если потом всё выгорит то тратить деньги и переписывать всё на что-то более существенное будет глупо.
Аноним 22/02/21 Пнд 21:27:29 #369 №1949421 
>>1949416
>сделаю один раз хорошо
Это не про реакт, у которого устоявшейся инфраструктуры нет от слова совсем, только монструозное bloatware уровня material-ui или react-select, где список одних параметров компонента занимает половину файла, либо низкоуровневые "собирай и ебись сам" конструкторы. Первый и не только первый самостоятельно написанный проект на реакте ты 100% выкинешь и будешь переписывать с нуля.
Аноним 22/02/21 Пнд 21:29:57 #370 №1949422 
>>1949370
>"я не дергаю элементы на страницы напрямую каждый раз
Чтобы поменять отображаемое значение на странице, тебе в любом случае придётся дёргать дом, хоть ты там десятью декораторами обмажься. А проводить вычисления за пределами дома ты и без прокладок можешь.
>а прокладываю между ними и остальным кодом стабильный интерфейс,
Не поверишь, но с домом ты уже общаешься через интерфейсы. Или интерфейсы не те?
>скрывающий детали имплементации"
Что ты там собрался скрывать на клиентской стороне, дебил? Любой идиот сможет посмотреть сырцы твоего говнокода, скрыватель хуев.
>превратился в "ООП головного мозга"
Так это и есть ООП головного мозга, так как ты тащишь свои привычки из другого языка.
>если бы там была "прокладка из функций"
Вот именно, что её бы не было.
Аноним 22/02/21 Пнд 21:34:48 #371 №1949426 
>>1949421
Откуда тогда такая популярность раз он столь плох?
Аноним 22/02/21 Пнд 21:37:18 #372 №1949428 
>>1949421
Какое отношение ui-элементы имеют к инфраструктуре? Все приличные ребят один хуй свои ui-киты пилят.
Аноним 22/02/21 Пнд 21:41:46 #373 №1949431 
>>1949405
>Какие у него пререквизиты
https://kentcdodds.com/blog/javascript-to-know-for-react

>Есть ли там что-то, что помогает или упрощает последнюю?
Нет, Реакт не делает абсолютно ничего чтобы упростить верстку, он исключительно про иерархию UI и передачу данных. Более того — либа для работы с DOM отделена от собсна Реакта.
Аноним 22/02/21 Пнд 21:49:50 #374 №1949437 
>>1949422
Пчел, ты даже не знаешь, что такое "скрывать детали имплементации" и думаешь, что это означает "прятать сурс-код от конечного пользователя", нахуя вообще в дикуссию влез? Вся суть ФП-шизиков, год поработал, а мнение имеет.
Аноним 22/02/21 Пнд 21:54:01 #375 №1949441 
>>1949426
Почему плох? Реакт заебись, проблема именно в инфраструктуре, а точнее в ее отсутствии, из-за чего перед вкатывальщиком стоит альтернатива либо хуярить свои велосипеды, которые потом за три жизни не разгребешь, либо тащить в проект 60кб минифированного кода для того чтобы добавить инпут с дропдауном.
>>1949428
>какое отношение ui-элементы имеют к разработке UI
Ну я даже не знаю...
Аноним 22/02/21 Пнд 22:15:12 #376 №1949448 
mobx
Аноним 22/02/21 Пнд 22:46:52 #377 №1949459 
>>1947026
>и мне нужно при нажатии на элемент сменить какое-либо значение в объекте с данными
Во вью достаточно повешать @click="handle(item)"


>>1947052
Какая магия? У них в доках везде написано что на все объекты рекурсивно вешается реактивность, твой массив становится реактивным, и каждый объект в нём становится реактивным, и если в объекте есть еще объекты то и они становятся реактивными.
Аноним 22/02/21 Пнд 22:57:41 #378 №1949461 
>>1949426
Он не плох. Просто сильно хитровыебанный местами. Нужно или привыкнуть или поискать что-то более понятное для тебя лично.
Аноним 23/02/21 Втр 00:32:16 #379 №1949496 
>>1948884
Как оптимизировал?
Аноним 23/02/21 Втр 00:35:12 #380 №1949501 
>>1949095
>SC на перфомит, поэтому мы переехали на линарию
А надо было сразу на sass.
Аноним 23/02/21 Втр 00:57:43 #381 №1949509 
>>1949501
Зачем возвращаться на устаревшие технологии?
Аноним 23/02/21 Втр 00:59:43 #382 №1949511 
>>1949441
У реакта наоборот самая развитая инфраструктура. Ты скорее всего диванный, писавший на вью и ангуляре, но имеющий мнение о реакте.

>тащить в проект 60кб минифированного кода для того чтобы добавить инпут с дропдауном
Ну точно диванный.
Аноним 23/02/21 Втр 01:00:03 #383 №1949512 
>>1949509
Так пихать стили в жс это как раз уровень какого-нибудь жиквери.
Аноним 23/02/21 Втр 01:02:04 #384 №1949514 
>>1949448
redux
Аноним 23/02/21 Втр 01:03:47 #385 №1949515 
>>1949512
Нет, это наоборот вершина развития инструментов стилизации на данный момент. Писать на sass — это возврат в 2014 год.
Аноним 23/02/21 Втр 01:24:02 #386 №1949519 
>>1949515
Нет это не вершина. Вершина развития - это вставлять SQL код в render функцию!
Аноним 23/02/21 Втр 01:45:15 #387 №1949532 
>>1949511
>У реакта наоборот самая развитая инфраструктура
У реакта(и у жса в целом) нет даже элементарных вещей, нужных 99% приложений, уровня неймд роутинга("бест практика" - это хуярить сырые строки в 10 местах, <Link to={`/users/${id}`}/>) или базового API клиента с тестовым интерфейсом(см. сосущий даже у фетча аксиос с раздутым конфигом и ебанутой системой интерсепторов, выкидывающий по умолчанию не-200 ответы вместе с сырыми эксепшенами или совсем охуевшие монстры вроде react-query, мешающие в одну кучу объявление эндпоинтов, получение данных, кеширование данных, рендеринг данных, и прибитые гвоздями к реактовскому API). А это самый низ приложения, когда идешь выше, то там вообще пиздец, что ни возьми: от форм до кастомных компонентов, все будет громоздким, неповоротливым, некомбинируемым и сделанным по принципу "захуярим сюда весь функционал, который в голову придет, и просто добавим 100 опций в конфиг".
Аноним 23/02/21 Втр 01:53:49 #388 №1949537 
>>1949515
Вершина развития стилизации - это как раз sass, у которого новая система модулей дает в рот даже самому жсу шел 2021 год, а жсеры до сих пор без плагина бабеля не могли установить рут сурса приложения и пользовались релативными импортами, кому расскажи - не поверят, а переменные, миксины и возможность без заебов складывать пиксели с хуикселями вообще ебут любые жсокостыли не разгибая уже сколько лет. Выглядит он так же в сто раз лучше, обратно совместим с сырым кссом, в консоли браузера ты сразу видишь ровно то же самое, что написал в коде, а не пропущенное через мясорубку жса месиво, так еще и работает быстрее, что при компиляции, что в браузере.
Аноним 23/02/21 Втр 01:58:03 #389 №1949539 
В чем отличие мидла от синьора?
Аноним 23/02/21 Втр 02:18:39 #390 №1949549 
>>1949537
Двачую, во вью можно писать sass под компонентами (из коробки scoped и css modules) и дальше крутишь как хочешь
Аноним 23/02/21 Втр 02:29:51 #391 №1949554 
>>1949539
мидл делает хорошо там, где сказали, синьор знает, где надо сделать хорошо
Аноним 23/02/21 Втр 03:23:50 #392 №1949566 
Господа! А есть ли какой-нибудь хороший ресурс, на котором уже есть какие-нибудь часто встречающиеся куски js-кода (аналог css tricks), дабы не изобретать велосипед там, где не надо?
Аноним 23/02/21 Втр 03:24:40 #393 №1949567 
>>1949537
В styled-components есть всё то же, но при этом в разработке они намного удобнее. Импорты давно есть в ts, переменные и миксины удобнее в styled-components, выглядят styled-components в сто раз лучше, и в консоли там всё нормально выглядит. Работает sass быстрее насколько, на тысячную секунды? Если взять linaria, то sass ни насколько не быстрее.

>>1949549
В реакте то же самое со стайледами.
Аноним 23/02/21 Втр 04:17:34 #394 №1949571 
>>1944376 (OP)
Как же заебали пиздатые окна про куки, которые невозможно закрыть, блядь!
Кто эту хуйню выдумал? Нахуй вообще нужны эти окна ебучие, на пол экрана?
И почему их закрыть, блядь, нельзя, или свернуть, а надо обязательно принять эти грёбанные куки?
Почему эти div'ы пиздатые, приходится вырезать вручную, из HTML-кода страниц?
Не хочу я ебучие куки ваши, пошли нахуй,
я хочу сайт посетить и контент прочитать, за которым пришёл из поиска!!!
Но нет, сукаблядь, вылазит окно на пол экрана. Прими ебучую куку!
Я уже заебался Ctrl+Shift+Delete нажимать и вычищать нахуй это говно из браузера.
Срут куками мне в хранилище локальное, а потом всё виснет,
и синий экран смерти при гуглеже вылазит, в самый неподходящий момент.
Конечно, блядь, гиг оперативки жрут куки, нахуй мне в броузере не упавшие.
Пошли нахуй со своими куками, и окна уберите эти уёбищные, заебали блядь.
Веб-макаки мамкой с папкой, до конца недопиленные.
Копипастят хуйню, а потом на сайты лепят, чтобы поскорей,
и такие уёбищные страницы получаются,
что хоть сиди и адблоком, вручню, всё это говно вырезай...
Аноним 23/02/21 Втр 04:28:23 #395 №1949572 
>>1949571
Можешь съебать в китайский интернет тогда, там ЕвроСоюз (Германия) практически не имеет влияния, и соответственно никакого GDPR. Ещё каких-то макак обвиняет, лол.
Аноним 23/02/21 Втр 04:30:00 #396 №1949573 
>>1949572
Не, ну это ж пиздец просто. Смотри какое окно вылазит, здесь: https://superuser.com/
Аноним 23/02/21 Втр 04:31:11 #397 №1949574 
>>1949572
>Можешь съебать в китайский интернет тогда, там ЕвроСоюз (Германия) практически не имеет влияния
Я лучше в LAN буду сидеть, здесь на весь ЕвроСоюз мы тоже срали все, с высокой колокольни. У нас тут ваще, отдельная сеть, независимая, бгггг.
Аноним 23/02/21 Втр 04:46:08 #398 №1949577 
>>1949574
Независимая до тех пор, пока пыневики глаз на неё не положат.
Аноним 23/02/21 Втр 05:58:00 #399 №1949587 
>>1949532
Тогда во вью ситуация ещё хуже, а в ангуляре такие же громоздкие как в реакте модули, просто их не надо отдельно устанавливать.
Аноним 23/02/21 Втр 08:45:39 #400 №1949636 
>>1949577
Анус пускай свой положат. LAN можно строить даже поверх Интернета. Гугли LAN через VPN.
Аноним 23/02/21 Втр 09:08:01 #401 №1949642 
>>1949532
>У реакта(и у жса в целом) нет даже элементарных вещей
Так есть же подключаемые библиотеки, че не так?
Аноним 23/02/21 Втр 09:13:51 #402 №1949646 
>>1949496
Вместо хелпера css склеивал строки сам
Аноним 23/02/21 Втр 09:16:45 #403 №1949647 
>>1949566
Да, github. Смотришь в сорцы лоудеша или рамды и берешь оттуда. Или просто ставишь эти либы.
Аноним 23/02/21 Втр 09:19:20 #404 №1949648 
>>1949532
Схуяли в Реакте, который абстрагирован от dom и от web вообще должен быть роутер или http-клиент?
Аноним 23/02/21 Втр 11:10:13 #405 №1949695 
>>1949587>>1949642>>1949648
Речь не о самом реакте, а об его инфраструктуре, то есть о тех самых "подключаемых библиотеках", которых нет в помине и даже базовые вещи надо писать с нуля.
Аноним 23/02/21 Втр 11:13:05 #406 №1949696 
>>1949567
Чел, ты пишешь css стили внутри строк с интерполяцией нахуй, о каком удобстве и красоте может идти речь? Ты ебанутый?
Аноним 23/02/21 Втр 12:10:36 #407 №1949711 
image.png
>>1948846
>Symbol, Proxy и другие фичи это излишние лоулвльные абстракции.
Аноним 23/02/21 Втр 13:32:22 #408 №1949760 
1234.mov
image
Где я ошибся, анон? Почему она моргает? Как-то нужно вызывать функции по 1 разу, а они вызывают много раз, как я понял. Помогите поправить.

Клепаю свой сайт на коленке, в первые в жизни пишу код, пока только вкатываюсь.
Аноним 23/02/21 Втр 13:51:30 #409 №1949772 
>>1949760
Твоя главная проблема - использование jquery.
Аноним 23/02/21 Втр 13:51:54 #410 №1949773 
>>1949760
> в первые в жизни пишу код
> жкуери
ты чё нахуй э
Аноним 23/02/21 Втр 14:03:13 #411 №1949785 
>>1949772
>>1949773
епт ну яж помощи прошу, епт мужики гречневые ну памахите хуле вам

давайте без жиквери перепишем
Аноним 23/02/21 Втр 14:14:07 #412 №1949792 
>>1949760
Потому что функции вызываются каждый раз при событии. Тебе их нужно объединять в одну, которая будет знать, какой эвент в данный момент выполняется и отменять его при запуске нового, но это слишком сложно будет, если только начал. Выпадающие менюшки лучше делай просто через css, примеров можешь миллион найти, в том числе и с анимациями. Но анимацию лучше вообще убрать нахуй, это только раздражает пользователя, если ему нужно ждать прорисовки твоей хуйни прежде чем можно начать ей пользоваться.
>>1949772>>1949773
Как обычно шизики стриггерились на жквери, но сидят молчком, как только им задают вопрос "а хули ты предлагаешь вместо?". Еще давайте высрите, что ему срякт нужно начать осваивать, чтоб менюшку сделать.
Аноним 23/02/21 Втр 14:16:42 #413 №1949795 
Запись экрана 2021-02-23 в 14.12.28.mov
image
Ебать внатури, привязал айди, удалил нахуй жиквери - все заработало!
Ну и параша этот жиквери блять... инсайд этого года для меня.

Алсо ток не понял как привязать айдишку к вызову маусовер

когда пишу document.getElementById("userlist").mouseover(showUserlist);

не работает, помогите ток эту строчку исправить пацаны!
Аноним 23/02/21 Втр 14:18:29 #414 №1949796 
>>1949795
Заработало оно только потому, что ты убрал анимацию, поехавший.
Аноним 23/02/21 Втр 14:41:07 #415 №1949814 
>>1949795
мен я предлагаю тебе литл бит слоу даун и хотя бы основы лёрн и тогда ол вил би окей
Аноним 23/02/21 Втр 14:42:32 #416 №1949816 
>>1949814
я лерни и практиую сразу, прост дошел до второй главы кантора, вот делаю че получается
Аноним 23/02/21 Втр 14:48:05 #417 №1949819 
>>1949816
ты меня не обманываешь случаем? там же нет жквери у кантора и твою задачу без него вроде можно сделать
Аноним 23/02/21 Втр 14:48:34 #418 №1949820 
XMLHttpRequest вообще нужен в современной разработке по факту? Спрашиваю, потому что не хочу читать немаленькую главу Кантора про какую-то историческую хуйню.
Аноним 23/02/21 Втр 14:49:53 #419 №1949822 
>>1949819
жику я подсмотрел в базовом курсе по js на юдеми
Аноним 23/02/21 Втр 14:50:47 #420 №1949823 
>>1949648
Как ты будешь SPA (основная ссуть реакта) без них писать? Вручную пердолить ссылку в навигаторе и пропукивать джейсоны через фетч? О том и речь.
>>1949760
>Где я ошибся, анон?
Анимируешь в жс то, что элементарно делается в CSS без ёбли с ассинхронщиной.
>>1949795
>удалил нахуй жиквери
Так ты селекторы оставил и события неканонично присвоил.
Аноним 23/02/21 Втр 14:54:16 #421 №1949827 
>>1949823
>Анимируешь в жс то, что элементарно делается в CSS без ёбли с ассинхронщиной.
В ксс анимацию можно сделать только через
display:none;
display: block
А в скриптах можно делать плавный переход fadein, поэтому я скрипты и начал писать
Аноним 23/02/21 Втр 14:58:32 #422 №1949832 
>>1949827
>В ксс анимацию можно сделать только через
Вот зачем ты пытаешься о чем-то утверждать с умным видом, если сам ВООБЩЕ не разбираешься в этом. Ты в своем уме? Нахуя так делать?

По существу - нет, ксс может делать ЛЮБУЮ анимацию.
Аноним 23/02/21 Втр 15:00:29 #423 №1949834 
>>1949832
Шиз, я все уже в интернете посмотрел на эту тему. Анимацию к display:none в ксс ты никак не прикрутишь

Анимировать блоки можно только через скрипты
Аноним 23/02/21 Втр 15:04:58 #424 №1949836 
>>1949827
Хуя дебил, этот переход не анимируется вообще, ни в жс ни в css.
Аноним 23/02/21 Втр 15:06:25 #425 №1949839 
>>1949834
Понятно)))

Сообщи, когда откроешь для себя opacity и выяснишь как на самом деле работает твой fadeinout

Долбоёб.
Аноним 23/02/21 Втр 15:07:49 #426 №1949841 
leetcode.png
Посоны, вот допустим есть задача

"Given a date string in the form Day Month Year, where:

Day is in the set {"1st", "2nd", "3rd", "4th", ..., "30th", "31st"}.
Month is in the set {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}.
Year is in the range [1900, 2100].
Convert the date string to the format YYYY-MM-DD, where:

YYYY denotes the 4 digit year.
MM denotes the 2 digit month.
DD denotes the 2 digit day."

Мое решение на скрине. Что в нем имело бы смысл поменять? Есть ощущение, что оно как говно выглядит.
Аноним 23/02/21 Втр 15:09:19 #427 №1949843 
>>1949841
В сплите потерялся аргумент, должно быть split(' '), но суть вы, надеюсь, поняли.
Аноним 23/02/21 Втр 15:09:29 #428 №1949844 
image
>>1949839
Очко себе сделай опасити. Эта хуета занимает место в итоге в потоке, блок надо убирать z индексом пониже.
Есть еще пердолинг с кейфреймс, но это именно уже пердолинг и костыли.
А речь шла про
>что элементарно делается в CSS без ёбли с ассинхронщиной.
В итоге все проще сделать в JS, теперь можешь вытереть мою сперму со своих губ, я кончил.
Аноним 23/02/21 Втр 15:10:14 #429 №1949845 
>>1949839
Вообще говоря css анимация обосрется когда элемент начинаетет влиять на поток и расположение других элементов. Браузр тупа такую анимацию вырубает и востпроизвогит только начальное и конечное состояние. Тут без жс не обойдешься https://css-tricks.com/animating-layouts-with-the-flip-technique/

мимо
Аноним 23/02/21 Втр 15:10:22 #430 №1949846 
>>1949836
никто не говорил что он в js анимируется
я говорю что в js ему есть альтернатива
Аноним 23/02/21 Втр 15:10:54 #431 №1949849 
>>1949845
Я про это и говорю, но обосрыши не хотят слушать, и продолжают маняврировать.
Аноним 23/02/21 Втр 15:32:02 #432 №1949872 
>>1949844
https://output.jsbin.com/feqabulolo
Аноним OP 23/02/21 Втр 15:39:08 #433 №1949877 
abu.mp4
>>1949872
Аноним 23/02/21 Втр 15:52:22 #434 №1949897 
>>1949849
Обосрался тут только ты.
Аноним 23/02/21 Втр 15:53:31 #435 №1949899 
>>1949844
>Эта хуета занимает место в итоге в потоке
Вот только мы говорим про абсолютно спозиционированный элемент, который из потока выпадает по дефолту. Так что ты тут жиденько обосрался, опять.
>Есть еще пердолинг с кейфреймс, но это именно уже пердолинг и костыли.
А вот ставить жиквери, который по сути этот кейфреймс заинлайнит, это конечно же не пердолинг.
Аноним 23/02/21 Втр 16:19:16 #436 №1949926 
>>1949841
бамп вопросу
Аноним 23/02/21 Втр 16:43:59 #437 №1949950 
>>1949926
Что ты хочешь услышать о своих пяти строчках кода? Задачу решил, молодец, успокойся.
Аноним 23/02/21 Втр 16:49:37 #438 №1949955 
>>1949841
могу посоветовать решать задачки на кодварс, там после твоего решения можно посмотреть чужие
Аноним 23/02/21 Втр 18:54:00 #439 №1950083 
Почему жс тред забит каким-то говном? какой-то версткой блять, жиквери, чего блять? Куча хуйни и офтопа? Вы что тут устроили?
Аноним 23/02/21 Втр 19:07:06 #440 №1950092 
Могу ли я прикрутить server-side-rendering к моему SPA приложению на реакте, чтобы ускорить его первую загрузку? Уменьшится ли количество js кода в отрендеренной странице? Логика ведь не может магическим образом испариться, а раз туда добавится еще отрендеренных html, то это только увеличит время загрузки сайта, и мне кажется рендеринг на сервере + загрузка будет дольше чем рендеринг на клиенте, тем более у меня какого-то ебического сервака. В теории будет круто сразу на сервере получить динамиский контент не тратя время на запросы и загрузку, но не надо ли будет все эти запросы переписывать?

В общем есть ли какие-то плюсы у этого подхода и можно ли его реализовать малой кровью?
Аноним 23/02/21 Втр 19:23:09 #441 №1950110 
>>1949647
а потом обезьяна ради 1-2 простейших действий тащит в проект целую либу, ага
Аноним 23/02/21 Втр 19:36:26 #442 №1950133 
>>1950083
А ты че жс пытаешься юзать в програмировании?
Аноним 23/02/21 Втр 19:37:47 #443 №1950135 
>>1950110
А почему бы и нет?
Аноним 23/02/21 Втр 19:43:54 #444 №1950138 
>>1950083
уебывай на пикабу быдло
Аноним 23/02/21 Втр 19:56:45 #445 №1950148 
Можно ли как-то заставить компонент реакта думать, что элемент, в который он в писан это окно? Например если я открываю отдельную страницу, они проверяет размер window и в зависимости от этого применяет стили. А вот если эту страницу вставить в модальное окно, то компонент должен считать размер этого модального окна и применить стили в зависимости от его размеров. Можно ли как то сделать проверку размеров окна универсально?
Аноним 23/02/21 Втр 20:05:38 #446 №1950153 
>>1950148
То как ты это описал звучит крайне хуево как по мне. Проще передавать эти значения в сам компонент, где-то брать из window (задать как дефолтные значения), где-то из размеров модалки. А еще лучше сделать на стилях, но тут сложно что-то посоветовать без конкретного примера.
Аноним 23/02/21 Втр 20:21:57 #447 №1950167 
>>1950153
То, что мне нужно, очень похоже на iframe. Правда никогда раньше не пробовал ничего подобного делать
Аноним 23/02/21 Втр 20:23:21 #448 №1950169 
>>1950153
Забыл дописать, компонент, который хочу вставить в модалку использует и медизапросы css и проверку размеров окна средставми js. И компонент можно было бы вообще не трогать, если бы просто можно было как-то заставить компонент думать, что он просто находится в окне меньшего размера
Аноним 23/02/21 Втр 20:58:01 #449 №1950192 
На javascript.info пишут
To make the range object iterable (and thus let for..of work) we need to add a method to the object named Symbol.iterator (a special built-in symbol just for that).

То есть это подразумевает, что на обычном объекте это свойство уже есть. В тоже самое время
const obj = {}
obj[Symbol.iterator]
выдает ошибку. Почему?
Аноним 23/02/21 Втр 21:03:00 #450 №1950194 
>>1950192
Пишется, что для того, чтобы объект имел возможность быть итерируемым - нужно добавить метод Symbol.iterator. Ты же пытаешься вывести свойство, которого нет. Так не работает, сначала нужно его определить.
Аноним 23/02/21 Втр 21:06:21 #451 №1950200 
>>1950194
Так в статье добавляют этот метод чтобы работал for of. По объектам он и так работает, хотя этого метода нет (точнее должен быть, но у меня почему-то ошибка вылезает)
https://javascript.info/iterable
Аноним 23/02/21 Втр 21:10:19 #452 №1950203 
image.png
>>1950200
>По объектам он и так работает
Каким образом?
Аноним 23/02/21 Втр 21:11:07 #453 №1950204 
>>1950200
С чего ты взял, что он работает?
const obj = {a: 1, b: 2}
for(let i of obj) {} тут выведет ошибку, что объект не итерируемый.
Аноним 23/02/21 Втр 21:12:19 #454 №1950205 
>>1950110
Ramda enjoyer'ы могут импортировать по одной функции, а ты пиши костыли вручную.
Аноним 23/02/21 Втр 21:15:46 #455 №1950208 
>>1950200
Шиз, итерация это метод, у главного объекта он отсутствует, этот метод надо ему передать напрямую или накинуть прототип от другого объекта, у которого есть метод итерации
Аноним 23/02/21 Втр 21:26:54 #456 №1950212 
>>1950205
Любая современная либа с подобной направленностью позволяет импортировать по одной функции, а уж лодаш тем более.
Аноним 24/02/21 Срд 00:44:30 #457 №1950332 
>>1949695
В реакт экосистеме на любой пук есть библиотека.

>>1949823
> Как ты будешь SPA (основная ссуть реакта) без них писать? Вручную пердолить ссылку в навигаторе и пропукивать джейсоны через фетч? О том и речь.
react-router
react-query
Аноним 24/02/21 Срд 00:46:13 #458 №1950333 
>>1949696
Не пойму, что тебе не нравится? Подсветки синтаксиса нет? Это ты ебанутый, если не можешь установить расширение для vscode.
Аноним 24/02/21 Срд 01:08:32 #459 №1950342 
>>1950332
>В реакт экосистеме на любой пук есть библиотека.
Нет.
>react-router
>react-query
см >>1949532
Аноним 24/02/21 Срд 01:12:50 #460 №1950344 
>>1950333
Не нравится то, что ты сравниваешь писание css-а через интерполируемые строки(!) в другом языке(!) с полноценным языком писания css-шаблонов, у которого другой цели в принципе нет, и где весь файл - это стили и ничего кроме стилей, и говоришь, что первое удобнее нахуй.
Аноним 24/02/21 Срд 01:23:33 #461 №1950347 
>>1950344
В styled-components есть всё то же, что и в css, и в sass, и даже больше — их можно юзать прямо в js файлах, в них удобно передавать пропы и на их основе устанавливать css-правила, в то время как в sass надо писать всратые классы либо data-атрибуты. Это некрасиво и неудобно. Темы тоже намного удобнее делать на стайледах, они сильно облегчают создание сложных интересов. У чистого sass буквально 0 преимуществ кроме мизерного выигрыша в перформансе, который нивелируется, если стайледы компилировать в css при сборке. То, что это интерполируемые строки — ну так какая разница? За последние два года я sass не использовал и возврат к нему это явный шаг назад, шаг в прошлое.

>>1950342
Я уже успешно создал несколько крупных проектов и везде react-router и react-query отлично себя показали. В одном из проектов был next.js, там свой роутер, который тоже выполняет свои задачи. И вообще нередко даже react-query не нужен был, хватало либо чистого фетча, где-то было кеширование от apollo.
Аноним 24/02/21 Срд 02:10:01 #462 №1950360 
>>1950347
>хватало либо чистого фетча
Кто-то может мне пояснить нахуя это нужно вместо аксиоса?
Аноним 24/02/21 Срд 02:22:04 #463 №1950363 
>>1950360
Нахуя нужен аксиос если фетч уже на кончиках пальцев?
Аноним 24/02/21 Срд 03:16:10 #464 №1950366 
>>1950363
Ну с XMLHttpRequest понятно, интерфейс уровня 2005 года, но на аксиос без ебли можно повешать свои мидлвары и крутить что хочешь, ну и прогресс аплоада файла еще можно получить (inb4 в 2021 файлы грузятся со скоростью света). А в фетче даже на 500 ошибки нихуя не выбрасывается, как ни крути а нужно своё говно лепить чтобы было удобно пользоваться
Аноним 24/02/21 Срд 07:09:06 #465 №1950393 
>>1950347
>styled-components
Опа этот шарит, скажи на каждый ли див спан и тд нужно делать стилизацию? Или можно сделать врапер а вложенные теги стилизировать классами?
Аноним 24/02/21 Срд 08:42:19 #466 №1950406 
image.png
> сас
Аноним 24/02/21 Срд 09:18:49 #467 №1950413 
>>1950406

>НАШЕ ЖИКВЕРИ НИ ЖИКВЕРИ ОНО В 2ДК2К ТАК ЧТО ЭТО СМУЗИ
Аноним 24/02/21 Срд 10:36:59 #468 №1950448 
чем заменить англицизм продакшен ?
Аноним 24/02/21 Срд 10:44:23 #469 №1950451 
>>1949130
Спасибо!
Аноним 24/02/21 Срд 11:43:12 #470 №1950471 
>>1950448
Запущенный в боевом окружении.
Аноним 24/02/21 Срд 11:46:20 #471 №1950472 
>>1950393
> Опа этот шарит, скажи на каждый ли див спан и тд нужно делать стилизацию?
It depends. При таком подходе проще нестить стили.

> вложенные теги стилизировать классами
Я бы не миксовал подходы с класснеймами и стайлд компонентами, только если ты не юзаешь Astroturf или что-то типа того.
Аноним 24/02/21 Срд 11:49:35 #472 №1950474 
>>1950472
Если в некоторых случаях описание слилей займет больше места чем рабочий код это норм?
Аноним 24/02/21 Срд 11:51:55 #473 №1950476 
>>1950472
>При таком подходе проще нестить стили
В том смысле, что ты можешь интерполировать вложенные стайлд компоненты без завязки на класснеймы. С решениями типа линарии это вообще однохуйственно, т.к. за тебя конпелятор извлечет стили (а рантайм оверхед будет небольшим за счет варов).

Хардкодед класснеймы еще чем плохи - их имена могут манглиться, если кто-то внезапно поменяет конфиг сборки.
Аноним 24/02/21 Срд 11:53:26 #474 №1950478 
>>1950474
>Если в некоторых случаях описание слилей займет больше места чем рабочий код это норм?
Норм, но мы определение стайлд комопнентов выносим в отдельный файл как раз для того, чтобы не мешать в одной куче рендер вьюхи с стилизацией.
Аноним 24/02/21 Срд 11:57:22 #475 №1950481 
>>1950478
>отдельный файл
Блин у меня нахуй диссонанс , есть css scss бэм и это все тоже лежит в отдельных файлах, я думал что фишка sc как раз в том что все касающейся компонента и лежит в нем?
Аноним 24/02/21 Срд 11:58:32 #476 №1950482 
>>1950481
Никто и не навязывает вынос в отдельный файл, тащемта.
Аноним 24/02/21 Срд 12:01:16 #477 №1950483 
>>1950471
не троль плз)
Аноним 24/02/21 Срд 12:02:39 #478 №1950484 
>>1949841
https://repl.it/@CharonIV/Dates
Аноним 24/02/21 Срд 12:21:42 #479 №1950493 
1607645995809.jpg
Короче пиздец я намучился с этим ебаным гугл сайн-апом но так и не нашел решение
Чтобы было нагляднее, вот есть 2 индуса ебучих https://www.youtube.com/watch?v=-OgU5EAcQmo и https://www.youtube.com/watch?v=5-jBzkttbx0 они оба делают абсолютно тоже самое, но у одного вылазит поп-ап, а у второго редирект на страницу гугла, и я тупо не понимаю, в чем моя проблема? Потому что мне надо именно чтобы был редирект, а не поп-ап
Аноним 24/02/21 Срд 13:11:06 #480 №1950517 
Есть ли какие-то подводные у useLayotEffect, если туда засовывается не очень тяжелое вычисление? У меня при первом открытии страницы очень быстро блинкуют некоторые стили, которые берут параметры от размеров окна. И если я чекаю размер окна просто useEffect-ом, то сначала происходит первый рендер, а уже потом все показывается в том виде, в котором должно после получения размеров окна. А вот useLayoutEffect чекает размер окна еще до первого рендера. Мою задачу это решает, просто хочу узнать, можно ли как-то обосраться с его использованием? При условии что там ничего асинхронного происходить не будет
Аноним 24/02/21 Срд 13:23:58 #481 №1950529 
>>1950517
useLayoutEffect синхронный и блокирует отрисовку (painting) страницы браузером, а useEffect нет. В этом все отличие. Собсна именно для твоего случая он и предназначен.
Аноним 24/02/21 Срд 13:26:43 #482 №1950530 
image.png
>>1950529
Заебись. А то не знал как избавиться от этой проблемы. Странно что про такую возможность сходу не поясняют в разных уроках. Вообще случайно про этот хук узнал
Аноним 24/02/21 Срд 13:38:39 #483 №1950534 
>>1950493
Ты бы сам хоть попробовал эту хуйню с первого видоса локально запустить, чтобы увидеть, что она открывает форму в отдельном окне. Чтобы редиректить можешь просто вызывать window.open() и передать в нее https://accounts.google.com/o/oauth2/v2/auth с нужными параметрами и после обратного редиректа брать код/токен и дальше делать что тебе надо.

И лучше бы вместо просмотра этих уебищных видосов изучил оф доки гугла по oauth, гораздо быстрее было бы.
Аноним 24/02/21 Срд 15:31:06 #484 №1950601 
>>1950534
Спасибо
Аноним 24/02/21 Срд 15:37:28 #485 №1950605 
mobx
Аноним 24/02/21 Срд 15:48:04 #486 №1950608 
>>1950605
нет
Аноним 24/02/21 Срд 15:54:10 #487 №1950616 
Прикольна зделоли
https://vueuse.org/functions.html
Аноним 24/02/21 Срд 16:03:01 #488 №1950630 
Вакансий на стажёра нету
Аноним 24/02/21 Срд 16:18:21 #489 №1950643 
>>1950630
Иди на миддла
Аноним 24/02/21 Срд 16:55:29 #490 №1950672 
>>1950366
>А в фетче даже на 500 ошибки нихуя не выбрасывается
Это плюс, дурачок. http-клиент не должен выбрасывать экспешены при получении не-200 ответа сервера, это ебанутый нонсенс. Если у тебя выкидывается эксепшен где угодно(включая http-клиент), то это должно означать пиздец, неожиданность, все не работает нахуй. Как пример - NetworkError, SyntaxError, TypeError и т.д. 500 ответ сервера таким случаем не является, его нужно нормально обработать и сказать клиенту "сервер на этот запрос чутка долбоеб, попробуй еще раз по-другому".
Аноним 24/02/21 Срд 17:01:25 #491 №1950679 
>>1950643
аххаа, кстати да
Аноним 24/02/21 Срд 17:38:10 #492 №1950711 
>>1950672
>Если у тебя выкидывается эксепшен где угодно(включая http-клиент), то это должно означать пиздец, неожиданность, все не работает нахуй.
>500 ответ сервера таким случаем не является, его нужно нормально обработать
У меня такое чувство что ты предлагаешь вместо try/catch ошибки ифами обрабатывать. И еще объясни, в чем разница между NetworkError и 500 ошибкой сервера для твоего приложения? Ты в любом случае ничего кроме алерта высрать не сможешь. Что так что так неожиданно и всё не работает нахуй
Аноним 24/02/21 Срд 18:01:16 #493 №1950736 
>>1950711
> Ты в любом случае ничего кроме алерта высрать не сможешь.
Про буферизацию и отложенный повтор неудачных запросов ты еще не проходил?
Аноним 24/02/21 Срд 18:12:10 #494 №1950751 
>>1950736
Ок, делаем ретрай и на NetworkError и на 50x? Тогда зачем тебе ебля с трай кетч И ифами?
Аноним 24/02/21 Срд 18:14:09 #495 №1950754 
>>1950711
>У меня такое чувство что ты предлагаешь вместо try/catch ошибки ифами обрабатывать
Я предлагаю вообще не использовать try/catch для реализации какой-либо логики в приложении, потому что это давно известный антипаттерн, как тебе такое?
> еще объясни, в чем разница между NetworkError и 500 ошибкой сервера
В том, что NetworkError - это "нихуя не работает, приложению пизда", тогда как 500 - это "бэкендер что-то нахуевертил, отправьте тикет или попробуйте еще раз"
Аноним 24/02/21 Срд 18:26:43 #496 №1950768 
>>1950679
Ну, я так и сделал. Проще подтянуть свой уровень до момента когда тебе можно что-то доверить чем мыкаться в поисках вакансии стажера-говночиста.
Аноним 24/02/21 Срд 18:27:50 #497 №1950769 
>>1950754
>потому что это давно известный антипаттерн, как тебе такое?
Не согласен, но спорить не буду, мы не об этом сейчас

Я изначально поинтересовался зачем брать довольно таки лоулевельный для фронтендеров апи, чтобы жсончики гонять, в котором отсутствуют хайлевельные штуки вроде мидлваров и тому подобного(что тоже не всегда нужно, это понятно). Или ты просто предпочитаешь новое говно старому говну? А если бы фетч выбрасывал на 400-500, твои действия?
Аноним 24/02/21 Срд 18:36:12 #498 №1950774 
Что почитать чтобы понять этот злоебучий this? Там он теряется, там он не теряется. В конструкторе класса он нужен, если тупо задаёшь поле - нет. Нахуя так сложно и как это всё осознать?
Аноним 24/02/21 Срд 18:37:38 #499 №1950777 
>>1950774
>что читать
что угодно. хоть бы и кантора
>как осознать
просто вызубри. осознание придет с практикой
Аноним 24/02/21 Срд 18:45:14 #500 №1950781 
>>1950774
https://medium.com/webbdev/js-a4a9dfed9782
Аноним 24/02/21 Срд 19:17:55 #501 №1950824 
>>1950774
Что там сложного? Даже ребенок поймет.
Аноним 24/02/21 Срд 19:19:59 #502 №1950828 
>>1950751
Ты сушедший? 500 ошибка, это значит, что сервер таки что-то но ответил. А нетворк еррор это значит, что домен вообще может не резолвится, нет сети, или еще что-угодно. И обрабатывать это все надо по-разному.
Аноним 24/02/21 Срд 19:20:41 #503 №1950829 
>>1950769
Фетч нихуя не лоулевельный, а любой твой миддлвар уровня "распарсить в жсон и добавить хедеры" делается одной оберточной функцией без дрочева раздутого неинтуитивного API, которое к тому же поощряет мисюзы и добавление бизнес-логики внутрь запроса.
>А если бы фетч выбрасывал на 400-500, твои действия?
Взял бы другой http клиент или сделал бы обертку над самим фетчем.
Аноним 24/02/21 Срд 19:28:44 #504 №1950838 
image.png
>>1950203
>>1950204
Аноним 24/02/21 Срд 19:34:19 #505 №1950845 
image.png
>>1950838
Аноним 24/02/21 Срд 19:37:55 #506 №1950849 
Пиздец, ебанный js отказался работать, я говорю ему делай так как я хочу, а он вообще с браузера ебанного выключился, теперь js вообще нигде не работает, я его нашел на рабочем столе, он с браузера выпал, что делать?
Аноним 24/02/21 Срд 19:44:46 #507 №1950859 
>>1950849
Учить нормальный язык.
Аноним 24/02/21 Срд 20:16:49 #508 №1950871 
>>1950859
2 макета за мивину и пара сайтецких один из которых лендос для наебизнеса достаточно будет?
Аноним 24/02/21 Срд 20:17:40 #509 №1950872 
>>1950871
Бля, не туда, идите нахуй.
Аноним 24/02/21 Срд 21:00:18 #510 №1950887 
image
Катимся:

>>1950886 (OP)
>>1950886 (OP)
>>1950886 (OP)
Аноним 25/02/21 Чтв 09:54:12 #511 №1951126 
ПЕРЕКАТ >>1951125 (OP)
ПЕРЕКАТ >>1951125 (OP)
ПЕРЕКАТ >>1951125 (OP)
ПЕРЕКАТ >>1951125 (OP)
ПЕРЕКАТ >>1951125 (OP)
ПЕРЕКАТ >>1951125 (OP)
ПЕРЕКАТ >>1951125 (OP)
ПЕРЕКАТ >>1951125 (OP)
comments powered by Disqus

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