Этого треда уже нет.
Это копия, сохраненная 14 июня 2022 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
16313000548100.png56 Кб, 1050x1050
JS Thread #231 /js/ 2200419 В конец треда | Веб
Предыдущий тред: >>2194587 (OP)

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

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

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

Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
2 2200425
>>00419 (OP)
Есть какие-нибудь бесплатные либы с компонентами, использующими tailwind css? А то я заебался реализовывать всякие спойлеры с нуля.
3 2200454
>>00425
Хвостоветер используют, чтобы высрать прототип и съебать в закат, какие компоненты?
4 2200473
>>00454
Чтобы в это высранном прототипе помимо статичных компонентов были интерактивные, не?
image.png40 Кб, 1380x324
5 2200494
Цель: хочу, чтобы vscode intellisense (или автозаполнение) видел в глобале эти переменные и сама предлагал мне варианты.

Предположил, что эта проблема решается через заголовки ts. Так вот могу ли я без ts использовать d ts? И как мне добиться моей цели?
6 2200500
>>00494
Что тебе мешает эти пути запихнуть в отдельный модуль и через его импорт обращаться к ним?
7 2200503
>>00494
Ты все правильно сделал в первом файле, только вместо = надо использовать :
declare global {
huy: string;
}
8 2200544
Почему когда я класс пишу в css он не парсит их из html, приходится вручную писать? Должно же быть можно как-то это сделать?
9 2200550
>>00544

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

10 2200555
>>00550
Я думал итак понятно написал. Вот например у меня в html есть
<input class="kakoyto">
я хочу чтобы я в style.css подключенный зашел, написал .k и у меня в предложенных были названия классов на k из html в т. числе этот "kakoyto"
11 2200602
>>00555
Все прекрасно работает.
12 2200609
>>00602
У меня в vs code тоже не работает.
мимо
13 2200611
>>00609
А у меня в вебшторме - работает.
14 2200617
>>00611
Почему в вебшторме всегда все работает, нечестно.
p.s. как на vs code это добавить мб кто-то знает?
15 2200619
>>00419 (OP)
По реакту можно вопрос?
пишу npx create-react-app my-app
У меня всё устанавливается, пишу yarn start - разворачивается дефолтная страница с логотипом. Пробую изменить текст в App.js, сохраняю - ничего не меняется.
В чем может быть проблема, в гугле невнятная хуйня какая-то.
16 2200622
>>00617
Никак =).
Используй css-модули, там он автоматом тебе предлагает вставить в твой шаблон код из css файла но не наобарот
>>00619

>По реакту можно вопрос?


Можно

>create-react-app


Нахуй надо. Не используй CRA, лютая параша.
>>00619

>Пробую изменить текст в App.js, сохраняю - ничего не меняется.


Что в консоли браузера?
17 2200625
>>00622

>там он автоматом тебе предлагает вставить в твой шаблон код из css файла


Я итак использую, ничего он не предлагает, наверное это тоже вебшторм
18 2200629
>>00622

>Что в консоли браузера?



[HMR] Waiting for update signal from WDS...
19 2200632
>>00625
Ну мб. Я ща проверил на дефолтных css моделях и действительно, не предлагает. Вот на vue шаблонах с включенным volar'ом работает.
>>00629
А в терминале что?
ддддд.jpg19 Кб, 439x156
20 2200636
21 2200639
>>00636
Ну хз в чем может быть проблема. Проверь еще, открылся ли вебсокет во вкладке network. Попробуй готовый бойлерплейт для вебпака или vite вместо create-react-app.
22 2200653
>>00639
Ну я ведь правильно понимаю, если текст в апп.жс менять и сохранить, оно должно сразу применить изменения?
23 2200664
>>00653
Ну если простыми словами - да. Webpack (который находится внутри create-react-app) начинает следить за всеми изменениями в файлах и при их наличии либо обновляет страницу, либо динамически меняет компонент (это называется HMR, реакт его поддерживает). Информацию об обновлении он отправляет на страницу по вебсокету.
Соответсвенно, если у тебя сервер поднялся, вебсокет работает, но обновления не происходит - скорее всего вебпак просто не видит изменений в файловой системе.
24 2200675
>>00653
Короче, если не хочешь ебаться с этим вебпаком попробуй просто другой сборщик, например vite:
npm init vite@latest my-app --template react
npm i
npm run dev
25 2200684
А я вот по этой хуйне делал и у меня всё работает https://medium.com/age-of-awareness/setup-react-with-webpack-and-babel-5114a14a47e9
26 2200688
>>00684
HMR не работает.
27 2200690
>>00688
Работает. Вроде как в вебпаке оно по-умолчанию работает.
28 2200700
>>00690
В вебпаке ничего кроме import и require по умолчанию не работает
29 2200720
>>00700
https://webpack.js.org/guides/hot-module-replacement/
Since webpack-dev-server v4.0.0, Hot Module Replacement is enabled by default.
30 2200755
>>00720

> All we need to do is update our webpack-dev-server configuration, and use webpack's built-in HMR plugin.

31 2200787
Нубский вопрос: А что плохого в CRA?
32 2200791
Сап двощь, нужно ли чистить вилкой IntersectionObserver при анмаунте в реакте или вью? Когда-то где-то читал, что там weakref на оберсвабл дом элементе, и при его удалении из дома почистится и сам обзервер (офк если он нигде не зареференсен)
33 2200798
>>00787
Конфиг вебпака трудно кастомизировать, потому что он спрятан

Хотя там вроде детач есть, который этот конфиг поближе перетаскивает
34 2200800
Почему так сложно-то?
Я уверен что я еблан и что-то делаю не так(((
35 2200815
Здрасте, первый раз в жизни пишу бакенд(на ЖС) и под конец проекта понимаю что у меня получается ужасающий непереносимый пиздец. Я конешн на полноценный код ревью не претендую, но скажите что изначально я делал неправильно и как вообще что то подобное надо было писать

вот пример одного проблемного модуля - https://github.com/artnavsegda/scene-server/blob/main/media.js

из очевидных пока для меня веще то что это все дорлжно было быть как минимум на тайпскрипте потому что основная честве времени что с ним происходят это рантайм ошибки связаными типобезопастностью и null safety

но мне кажется все еще глубже и я фундаметально проекты не умею разщрабатывать а получилось накидать то что едва работает теми способами которыми я кое как умею
36 2200829
>>00791
Возьми и проверь. Зарендери несколько дсятков тысяч элементов и посмотри на расход памяти
37 2200863
>>00815
Ок. Кодревью так кодревью.

Осень много повторяющегося кода.
Осень много хардкода.
Я бы соватовал таки про ООП и паттерны почитать. Как бы жс-няши не пытались от него сбежать, без ООП получается бяка. В твоем случае - у тебя бы было два класса: Source и Room
38 2200869
>>00684
>>00675
>>00639
>>00622
>>00700
Лол, не работало только если писать криэйт реакт апп в терминале WSL, написал в стандартном терминале - заработало, всё обновляется в ту же секунду
39 2200879
>>00869
Ныааааа по ебалу лично от сеошного индуса, понравилось отлаживать баг, который даже не ты создал? Ахахаха. Спасибо, мистер индусец.
image.png695 Кб, 960x683
40 2200880
>>00879
Забыл пик.
41 2200886
>>00880
И в чем тут баг, если этот долбоеь использовал совершенно разные окружения, с разными перемееными path? Установку производил в винду, а запустить пытался под линуксом?
42 2200900
>>00863
Что такое "хардкод", в твоем понимании?
16326640495520.png2,9 Мб, 1920x1080
43 2200928
Дайте наставления худому кунчику 185/56, ну или просто обосрите. https://github.com/webPrsnr/js-countdownTimer
44 2200941
>>00900
Case
When "huy"
Wheb "pizda"
...

Httpclient.get("127.0.0.1/api/getHuy")

У тебя завтра хуй и пизда переименовались в пенис и вагина, апи переехал на другой адрес, и ты по всей своей помойке меняешь адреса, кейсы, ифы....
45 2200980
>>00928
А хули он не работает? Доделывай
46 2201066
>>00980
Теперь должно работать (ну я надеюсь).
47 2201083
>>00863
Что такое осень много кода? Плачущие джуны под столами.
В коде размножаются баги косяками
Очень я давно доволен не был.
48 2201094
>>01083
Это хокку?
49 2201098
>>01094
Это переделка ДДТ
50 2201125
>>01098
Домэйн Драйвен Тестинг?
51 2201149
Насколько имеет смысл React-ньюфагу изучать Jest и вообще тестирование?

Востребованы ли эти навыки?
52 2201186
>>01149

>вообще тестирование


Всегда полезно, если уметь применять, если проект ведется с хорошей культурой программирования. Да и вообще как область нужно изучить, она не такая большая, но расширить кругозор никогда не бывает лишним, в какой нибудь ситуации поможет повернуть мозг так, чтоб решить проблему. Какой либо инструмент изучать углубленно не стоит, а вот общие принципы очень даже.
53 2201263
>>01149
Лишним точно не будет.
54 2201285
>>00928

>Все элементы захардкожены.


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

>this.countValue;


Чи шо

>warningSpan.innerHTML = `correct value ${valMin} - ${valMax}`;


Зачем ты всталяешь в innerHTML это? Надо вставлять в textContent

>setInterval


Где проверка на то, что прошло именно 1000 мс, а не 999 или 1001? То, что у тебя стоит число 1000 не гарантирует того, что пройдет ровно одна секунда.

>el.setAttribute("readonly", true);


Палю годноту: el.readOnly = true;
55 2201290
>>01066
Да, ничего так. Хотя походу оно работало и это я тупой, надо было сначала цифру отсчета написать.
Единственный косяк, что он первую цифру сглатывает.
56 2201500
>>01285
Блин, пасибо за обратную связь, пойду исправлять это говно.
57 2201505
>>01285

>Сделай лучше, что бы в конструкторе каждый раз создавались новые элементы и вставляет их после указанного слелектора или элемента в аргументе для каждого инстанса


Это не понимаю. Т.е целесообразнее класс заменить на конструктор?
58 2201544
>>01505
Конструктор - это функция, вызываемая когда ты создаешь инстанс класса через оператор new. Тебе нужно в него передать аргументом либо жлемент, внутри которого ты будешь создавать таймер, либо селектор, по которому ты можешь найти этот элемент в текущем документе.

new SosachTimer(document.getElementById("sosach-container"))
new SosachTimer("#sosach-container")
123.png43 Кб, 1572x454
59 2201545
Подскажите ньюфагу, в чем может быть проблема.
Пытаюсь заменить неразрывной пробел в строке.

В jsfiddle всё работает нормально:
https://jsfiddle.net/hg0zcvk7/

В chrome не работает нормально (пикрил):

Это хром мозги ебёт?
60 2201552
>>01545

>В chrome не работает нормально


>В jsfiddle всё работает нормально


Ты жсфиддл открываешь через хром? Если да, то, возможно, у тебя старая версяи скрипта просто закешировалась. Попробуй обновить через Ctrl+F5
123.png81 Кб, 1552x901
61 2201579
>>01552
Да, через хром.
Когда вношу изменения в код, то всегда обновляю через CTRL+F5.
Проблема именно в том, что когда исполняется javascript-код на странице, то не работает.
Но если в хроме вызову глобальную фукнцию и передаем ей эту строку, то работает, т.е. пикрил:
62 2201604
Чуваки. Может кто-нибудь подсказать как пофиксить магию. В общем у меня в цикле выводятся одинаковые компоненты (кнопки). Стили для всех них одинаковые. Когда нажимаю на кнопки - у всех срабатывает focus, кроме последней. Когда кликаю по последней кнопке ещё раз - фокус навешивается. Как это понять?
63 2201612
>>01579
Нужен полный код
64 2201651
>>01604

> у всех срабатывает focus, кроме последней


Что подразумеваешь под срабатыванием? Навешивание псевдокласса или событие focus? Нужен полный код
65 2201663
как фиксить исчезание границ у input?
66 2201666
>>01663
Короче я добавил 1px solid black; для него и починилось, но почему базовый так косячит, непонятно?
68 2201674
>>01666
>>01663

>почему базовый так косячит, непонятно?


тому что эта граница не инпута, а div'а внутри shadow dom
image.png149 Кб, 1751x816
69 2201681
>>00500
>>00503
Благодарю, теперь проблема следующего уровня. Хочу пройтись по массиву и каждую объявить в глобале и задать ей тип строка (ниже комментом как бы это могло бы выглядеть, если я бы каждый путь прописывал ручками)

PS То что есть сейчас не жалуется на ошибку, но и не работает как хотелось бы (другими словами у них у всех any тип)
70 2201745
Капец, блин, я всё не понимал, почему такая функция

const test = () => { value: 'value' };

ничего не возвращает (undefined), хотя вроде должна возвращать объект. Оказывается, тут "value" воспринимается как метка, а не свойство объекта.
71 2201759
Как сдампить в консоль полное определение типа в TypeScript ?

ib4 мышой в IDE
72 2201769
>>01745
Тому что фигурные скобки открывают тут функциональный блок, если ты хочешь вернуть объект то тебе надо обернуть это все в круглые скобки.
const test = () => ({ value: 'value' });
73 2201771
>>01769
А, окей, не знал про это. Спасибо.
74 2201784
То что локальный state не переживает смену route это я так понимаю фича?
75 2201797
>>01759
Никак, TS компилируется в жс с потерей всех типовых аннотаций.
76 2201804
устроился мимотайпскриптзалупой на работу, че мне нужно знать про тс? ниче не писал на нем
77 2201805
>>01804
Самое главное знание тайпсрипта - это тип any. Если видишь, что где-то ругается тайпскрипт просто ставь тип any и не еби мозг.
78 2201806
>>01804

>че мне нужно знать про тс


Что типизированная ООП ориентированная хуита не нужна.
Реактеры сразу заулыбаются и в губы поцелуют.
79 2201809
>>01805
Как на счет поверх тайпсрипта запилить еще один препроцессор, который автоматом будет ени ставить?
А если нечаяно тип проставишь - "Ок 200 - Типы запрещены, там выше разберуться"
Для репид девелопмента ткзть
80 2201810
>>01806
реактеры это больной народ, они себе в жопу проптайпы суют, они даже цсс в жсуретру суют, диспатчат оттягивание кожицы на хуе, пидоры они
81 2201814
>>01797
Так а с помощью самого tsc?
82 2201816
>>01809
Можно линтером запретить все типы кроме any
84 2201819
>>01797
>>01759
Может можно как-то тайп мапы раздрочить?
85 2201829
>>01818
Вообще не про это

Допустим у меня есть тип T, произведенный с помощью хуевы тучи всяких штук вроде Pick, Omit, Exclude, тернарных операторов и прочего говна

Я хочу увидеть его полное определение без использования постороннего тулинга типа IDE
86 2201831
Как сделать onBlur для двух инпутов как будто это один? т.е. чтобы когда я нажимаю на один из инпутов второй не считался blur для другого?
87 2201842
>>01831
Сохранять текущий заблюренный инпут в переменной
89 2201937
>>01929
+
Хотя это тоже самое, что чел выше кидал.
Стикер191 Кб, 512x512
90 2201968
>>01651
Смотри. У кнопок есть псевдокласс focus. На :focus на кнопки навешивается белая рамка из стилей. Код к сожалению показать не могу. Постараюсь попозже скинуть, если получится.
91 2201971
>>01968
:focus-visible пробуй вместо :focus
92 2202020
Всем здравствуйте.
Собрал в докере бэкэнд
в коде описана сущность, я написал еще одну, тобишь у нас получилось две таблицы, сделал синк с БД, в БД появились обе таблицы. Я запушил ветку где есть две сущности, вернулся на ветку назад, где только 1 сущность, но каждый раз когда я удаляю локально с БД вторую сущность, делаю синк схемы (TypeORM) она опять возвращается, хотя в коде ее нет. Может кто объяснить мне почему это происходит ?
93 2202022
>>02020
как же хуево и непонятно я написал.
еще раз:
в TypeORM описано две @Entity => схема синк => в БД появилось две таблицы
отлично, результат пушим на гитлаб
переходим на ветку назад, TypeORM описывает одну @Entity => схема синк => в БД все также две таблицы, хотя должна быть одна
Скорее всего, проблема с локальной БД, но не могу врубиться почему так
94 2202032
Что за хуета, я еслинт сломал?
image.png27 Кб, 834x247
95 2202035
96 2202040
>>01968
Если ты на файрфоксе попробуй другой браузер, в нем дохуяище багов
97 2202046
>>02035
мб путь до преттир конфига проебался
98 2202144
>>02040
Не, проверял на Edge
99 2202232
>>01604
Стили у последней кнопки смотрел?
100 2202241
Привет, котоны. У меня проблема, охуенно странная. Суть такова: есть фронт на продакшене, данные он берет с помощью Apollo-client версии 2.x. Я обновил его до версии 3.x и началась какая-то залупа. Серверная часть во время SSR начала течь. Я нащупал наиболее текущий эндпоинт, там в реакт-компоненте два запроса. Если оставить только один - приложение не течёт, если другой - течёт. Как такое может быть? Компонент функциональный, запрос на хуке useQuery соответственно, но это не важно, на самом деле, ведь в компоненте-классе с запросом в виде HOC graphql такая же хуйня. Даже если в запросе выбирать любое одно ссаное поле - все равно течёт как сука. Любой другой запрос не течёт.
101 2202370
Сап, анон. Я написал свой первый Javascript.
https://greasyfork.org/en/scripts/432951-rufuker-2ch
Оцени код. Меня возьмут во фронтенд?
image.png171 Кб, 885x582
102 2202379
Джава скрипт ахахаххахах
103 2202382
Вы используете контекст вместо редакса?
104 2202383
>>02370
У тебя вся логика в конструкторы запихина.
105 2202387
>>02383
Если вынести из конструкторов в отдельные методы "bootstrapObj()" будет заебись?
106 2202389
>>02370
какой-то странный код, ты раньше на другом языке не писал случайно? Вот я читаю обычно код всяких либ и ничего, а твой с ебанцой какой-то
107 2202391
>>02389
В детстве ассемблером баловался. А что странного-то? Я согласен, надо разобрать конструктор класса Rufuker, вынести большую часть в метод compile_regex().

Но вот в кострукторе класса TextReplacer2ch ничего не убрать. Там только проверки, без которых объекту существовать нельзя.
108 2202403
>>02391

>Но вот в кострукторе класса TextReplacer2ch ничего не убрать. Там только проверки, без которых объекту существовать нельзя.


Если объекту существовать нельзя, то нахуя его инициировать?
109 2202405
>>02391
да вроде всё норм, но я не могу въехать в код ваще. можно доебаться до ооп и использование вар, лет и конст в одном коде. но я нуб, ждём ревью от помидоров
110 2202409
>>02405
>>02403

>Есле обйэкту сушествовац нельзя, то нахуя его ыныцыыровац?


Хорошее замечание. Хотелось сделать максимально простой для повторного использования класс: создаешь его объект, передаешь свою функцию замены текста и оно работает.

Вот, вынес из конструктора Rufuker подготовку регекса
https://www.toptal.com/developers/hastebin/ibafonupox.typescript
111 2202415
>>02405
Ну, там есть 2 класса...

Один посвещен конвертированию текста согласно заданных в нем правил:

>да вроды всё норм, но я не могу вйэхац в код ваше


Правила заданы картой из объектов регекса. Там только маленькие буквы. Чтобы не писать повторно правила для больших, пришлось добавить в классе UPPERCASING этих правил.

А на втором пики точенные. Он работает с DOM макабы, отслеживает появление новых постов и попапов, заменяет в них текст, вызывая функцию конвертации из первого класса. При инициировании он сначала заменяет все посты в DOM'e, затем запускает 2 обзервера:

1) Обзервер для выявления попапов выскакивающих при наведении мыши на ссылку с номером поста, а также для подгружаемых постов при скроллинге корневой страницы борды.

2) Обзервер для выявления постов добавленных в треде автообновлением. Этот обзервер нужен только в треде, на борде автообновления нет.
112 2202427
>>02415

>отслеживает появление новых постов и попапов, заменяет в них текст


Звучит как две задачи, сделай два класса
Осло, в первом классе один метод и нет стейта, звучит как функция
113 2202431
>>02020
Может у тебя миграции в бд лежат и при старте выполняются?
114 2202443
>>02427

>Звучыт как две задаче, сдылай два класса


Обе задачи решаются в одной функции-методе https://controlc.com/d0dca04e Конкретно, трехстрочными ветвлениями в середине

if (n.className === 'post post_type_reply post_preview') {
....
else if

Если выносить в отдельный класс, это приведет к дублированию гораздо большего кода. + создание третьего обзервера увеличит нагрузку на ЦП на 50%
115 2202450
>>02427

>Осло, в первом классе одэн метод ды нет сцяйта, звучыт как функцыя


Да, class Rufuker - обертка для пары функций и массива данных. Состояния нет. Но вот дилема ре-юзабельности:

Сейчас весь код состоит из двух классов. Если захочется использовать такую конвертацию текста в другом приложении или сайте - мы просто берем и используем класс Rufuker целиком, не разбираясь какие там функции для чего.

Аналогично, с классом TextReplacer2ch: если хотим грабать весь текст с двача или перевод постов, то мы просто берем этот класс целиком, не разбираясь что внутри, передаём ему аргументом свою функцию работы с текстом и всё работает.

А вот если разобрать эти классы на запчасти, то потом сложнее будет в повторном использовании. Вообщем, не знаю как быть и что важнее. Реюзабельность кода или его каноничность.
116 2202452
>>02443

>if (n.className === 'post post_type_reply post_preview') {


Это что за говно. Если у элемента классы будут идти в другом порядке это уже не правильный элемент? А если у него есть еще какой-то класс?

classList для кого?
117 2202494
>>02450

>хотим грабать весь текст с двача


Я хочу красить посты зеленым, как твой класс пореюзить? "Ну скопируй"
Один класс траверсит ноды, другой их теребонькает, вот и вся каноничность
118 2202555
>>02494

>Я хочу красить посты зеленым, как твой класс пореюзить?


https://www.toptal.com/developers/hastebin/oniyovujod.php
119 2202560
>>02452

>classList для кого?


Спасибо, так действительно лучше.
https://appp.me/Etaeii
120 2202561
Всем спасибо. Коммитнул версию Refuker 2ch v0.52 на Greasefork. https://greasyfork.org/en/scripts/432951-rufuker-2ch
Советуйте еще, завтра продолжим делать двощ более смишнее.
121 2202564
>>02561

>Советуйте еще



Определяй все константы чере const, а не var/let/const как у тебя

>if (!document.getElementById('posts-form')) return 1;


Куда ты возвращаешь 1?

Сишный стиль цикла for уже как несколько лет не в моде. Используй forEach или for of

> if (this.workingElement = document.getElementById('posts-form')); else return 1;


Не читаемо, переписывай.

>куча биндингов


Используй стрелочные функции, их не надо биндить к контексту

>названия переменных в змеином регистре


В жс общепринятый стиль написание - это camel-case. Переписывай.

>innerHTML


Медленно работает, реализуй решение без использования innerHTML

>комментарии на закрывающих скобках


Тут вообще проиграл, поставь себе нормальный редактор

И главный вопрос: нахуя тебе тут классы? Ты хуйню какую-то написал, которая пишется на одном mutation observer с одним единственным коллбеком.
122 2202567
>>02564

>пишется на одном mutation observer


Который обозревает subtree всей страницы. И как это скажется на производительности?
123 2202568
>>02564

>Используй стрелочные функции, их не надо биндить к контексту


И как в данном случае стрелочной функцией передать обзерверу метод класса Rufuker с контекстом класса TextReplacer2ch ?
1541195893953.mp4112 Кб, mp4,
1280x718, 0:01
124 2202660
Как придумывать названия для всей хуйни? Вот я тудулист делаю, у меня названия блядь ЛистЛистов, Лист и Листы. Как нормальные делать то?
125 2202727
>>02660
ToDoList - папка с компонентом
- Index - публичная часть компонента
--List - список
--Item - элемент списка
--ListController - Контроллер для списка
--ItemController - контроллер для эелемента
--ListView - шаблон с стилями и разметкой для списка
--ItemView - шаблон уже для эелемента списка
126 2202735
>>02727
Спасибо
Index это типа то, что в итоге это всё засовывает в документ?
То есть условно всё собирается в ToDoList.js, а потом index.js его засовывает в index.html. Как в CRA App.js сделано.
127 2202777
>>02727
Что в контроллере?
128 2202901
>>02567

>И как это скажется на производительности?


Нормально скажется, это не тормознутые DOMEvents. Если грамотно с DOM работать, а не использовать innerHTML то даже быстрее работать будет
>>02568

>И как в данном случае стрелочной функцией передать обзерверу метод класса Rufuker с контекстом класса TextReplacer2ch ?


Пчел, у тебя везде биндятся методы инстанса текущего класса к нему же.
129 2202913
>>02901

>у тебя везде биндятся методы инстанса текущего класса к нему же.


Напиши мне эту стрелочную функцию вместо бинда.
130 2202922
>>02913
Написал тебе за щеку, проверяй.
131 2202930
>>02913

>replaceNewPosts (mutationsList, observer) {


replaceNewPosts = (mutationsList, observer) =>
Ты совсем глупенький?
132 2202969
>>02930
И дальше длинный текст функции replaceNewPosts() ? Ну, тогда вся логика окажется в конструкторе, как тут уже говорили >>02383
image.png1 Мб, 937x528
133 2202974
Посоны, есть один канвас, как имитировать в нём клик на нужную мне кнопку? Например вот здесь нажать на кнопку с пикчи https://www.pragmaticplay.zone/en/games/the-dog-house-slot/

На обычной странице я бы использовал .click(), но тут хуй его знает, мои познания кончаются, помогите нажать кнопку с помощью JS, нужно для автоматизации процесса над канвасерами, это пример
134 2202978
>>02974
https://stackoverflow.com/a/18053642
достаёшь координаты нажатия, дальше просто проверяешь, находятся ли координаты внутри кнопки
135 2202983
>>02978
Вот сейчас не понял, одной строчкой кода здесь не обойтись да? Можно пример по канвасу по ссылке? Имитировать клик по кнопке запуска, дальше думаю разберусь как нажать по остальным
136 2202992
Можно скипать тему про предохранители? Это сейчас используют?
137 2202995
>>02992
Хрюакт
138 2203002
>>02777
Армяне в нарды играют.
139 2203020
>>02983
кажется нет, придётся велосипедить всё вроде как
на самом деле, не еби мозги себе, мне кажется. проще и лучше эту кнопку сделать html элементом поверх картинки
140 2203102
>>03020
Неужели неясно, что это он спрашивает не про то, как написать что-либо, а как автоматизировать. Это не его код, это не он пишет эту кнопку. Он хочет по этой кнопке нарисованной на канвасе нажать программно.

Что за ахуительные советы вы даете, блядь.
141 2203195
Погромисты, дрочусь-учусь тут с реакт. Хочу сделать таймер. Есть 4 инпута (дни, часы, минуты, секунды). Есть state-объект куда из инпутов сохраняется значение. Я хочу сделать, чтобы введя все нужные значение и при нажатии на кнопку в инпуты поступал обратный отсчет. Т.е, например пользователь ввел 00 (д) 00 (ч) 02 (м) 30 (сек), нажал на кнопочку и в этих инпутах пошел отсчет 00 (д) 02 (ч) 02 (м) 29-28-27 (сек). Ну вы поняли.

Думал передавать этот state-объект через value в инпут
<input value={state.sec} />
Но нихуя, просто при обновлении странички появляются нули и даже отредактировать инпут нельзя в таком случае.
Как передать значение переменной в input и чтобы он обновлялся каждую секунду?
image.png1 Мб, 937x528
142 2203198
Хорошо попробую по другому

См. пикчу, стрелкой я указал нужную мне кнопку для примера, как нажать на эту кнопку с помощью JavaScript учитывая то что этот слот выводится с помощью Canvas, так ещё и во фрейме, это вообще возможно?

То что он во фрейме можно обойти с помощью запуска в этом фрейме расширения это ладно, а вот как именно нажать эту кнопку в этом канвасе который по сути является просто картинкой и в нём не за что зацепиться с помощью названия блока я понятия не имею

Ссылка на пример слота https://www.pragmaticplay.zone/en/games/the-dog-house-slot/
Можно пожалуйста простейший пример загрузить на https://jsfiddle.net/
Свои скрипты на сайтах я запускаю с помощью User JS или собственного расширения, так что с запуском проблем не будет, для примера можно просто запустить обычный setInterval который бы нажимал её каждые 3 секунды
143 2203201
>>00473
если ты заебываешься с нуля, то зачем используешь tailwind? есть material ui, chakra ui и т.д. и т.п.
144 2203204
>>03195
прочитай основы в документации реакта, я думаю, что ты найдешь ответ на свой вопрос
145 2203208
>>03204
Ну так я читал. С помощью useRef передавать? Я только с ним особо не разобрался.

Просто когда я пишу let inputEl = useRef(null) и потом в input вписываю ref={inputEl}, то у меня inputEl.current равняется null и нихуя не работает.
146 2203221
>>03198
Тебе нужно про диспатчить PointerEvents канвасу, в котором передать координаты по которым находится кнопка.

На самом деле тебе это не нужно и ту тупой долбоёб. Ты должен отинспектировать вызываемый хэндер при нажатии на кнопку и просто вызывать его вручную.

>Можно пожалуйста простейший пример загрузить на


300 баксов.
bb6faf8f20cf.gif5,5 Мб, 624x329
147 2203271
Братва, пытаюсь использовать react-three-fiber для отображения профиля поверхности одной хуйни.
Юзаю <planeBufferGeometry args={[5, 5, 1280, 1024]} /> - Получается поверхность 1280х1024, 1кк точек, выдавливаю по оси z рельеф и натягиваю текстуру, все нормально, но есть проблемы - жутко проседает фпс и обработка кликов по поверхности фризит рендеринг на пару секунд. Дело в моих кривых руках или в том что planeBufferGeometry не рассчитан на использование таких больших значений?
image.png917 Кб, 1480x759
148 2203319
Как сделать также, чтоб картинка была фоном всех компонентов страницы?
149 2203349
>>03221

>отинспектировать вызываемый хэндер при нажатии на кнопку


Это типа с помощью брейкпоинтов отследить какую функцию нажатие по кнопке вызывает?
image.png59 Кб, 554x401
150 2203352
>>03349
Можешь отладчиком пошагово, если тебе не лень. А можешь просто поизучать навешанные на канвас листенры в инспекторе, и высянить, какой тебе нужен.
151 2203355
>>03319
Установить ее фоном у body.
152 2203363
>>03201
Не хоче тащить либо в пару сотен килобайт для аккордеона и спойлера
153 2203365
>>01285
Исправил понемногу, ток не представляю как можно отслеживать время в setIterval.
https://github.com/webPrsnr/js-countdownTimer
154 2203368
>>03319
backgorund-image: url(govno) no-repeat;
155 2203371
>>03365

> как можно отслеживать время в setIterval.


Никак, тебе надо использовать таймаут.
Сохраняй Date.now() в переменную и после каждого срабатывания функции вызывай Date.now() и проверяй, что прошло именно 1000 мс. Если там другое число, то назначай таймаут с учетом корретировок.
image.png411 Кб, 608x308
156 2203433
хайповое говно и тырпрайзный онгуляр
странная комбуха
157 2203467
>>03433
Согласен, эксперты с жс треда быстро бы им объяснили, в чем они не правы.
image.png25 Кб, 419x450
158 2203512
>>03352
Анон я не силён в этом, можно пример как его найти? Дальше думаю разберусь как найти остальные, потому что кликов мне нужно сделать 3-4 в разных местах
159 2203516
>>03512
300 баксов
160 2203553
>>03512
Ишешь из этого списка нужный тебе обработчик, потом просто колбек этого обработчика вызываешь как тебе нужно.
161 2203629
Пацаны как искать удаленнку через ИП и как пендосам грить шо через ОП онли?
162 2203673
В какой среде можно клепать хтмл, цсс и жв и сразу выводить что происходит в браузере?
163 2203686
>>03673
В любой
164 2203694
>>03673
советую vs code или платный webstorm
165 2203724
>>03673
Внезапно в браузере и можно.
166 2203744
>>03673
Оппост прочитай.
>>00419 (OP)
167 2203755
Есть jquery и есть радиобатоны. Как адекватно выполнить действие в зависимости от выбранного радио? Сейчас так но это как-то стремно:
let chkd = $('input[name=bar]:checked', '#foo-opts');
if (chkd.is($('#rb1'))) {...}
else if(chkd.is($('#rb2'))) {...}
else if(chkd.is($('#rb3'))) {...}
}
168 2203756
>>03755
Обернуть в form и получать её value каждый раз, когда нужно выполнить какое-то действие. Даже жиквара не нужна
169 2203779
Сап двощь. А возможно ли в реакте реализовать некую append only структуру, как пример тот же тред на двачике, или ререндер даже 1к компонентов в принципе по производительности не ударит?
170 2203780
>>03779
Ожидания от структуры?
171 2203782
>>03755
Какой бля жиквери? Перекатывайся на реакт срочно.
172 2203786
>>00619
Добавь файл .env.local и напиши туда FAST_REFRESH=false
173 2203793
>>03782
Чел на жикваре формы сделать нормально не может, а ты ему реакт советуешь...
174 2203794
>>03779

>ререндер даже 1к компонентов


На таком количестве компонентов бутылочным горлышком станет сама структура DOM в браузере, а не vDOM из реакта
175 2203820
Как лучше передавать пропсы? Засовывать в один объект или по-отдельности лучше писать (ну если это не массив, тогда то понятно)?
Если в один объект засунуть, то проще передавать дальше, но наверное выглядит менее очевидно.

То есть например
<Хуй хуйГовно = "ждпюгшою" пиздаГовно = "djythdg" джигурдаГовно = "дгнборпык" />
он возвращает
<Пизда пиздаГовно = {props.пиздаГовно } джигурдаГовно = {props.джигурдаГовно} />
а это возвращает
<Джигурда джигурдаГовно = {props.джигурдаГовно} />

Или лучше

<Хуй хуйГовно = "ждпюгшою" пиздаДата = { говно: "djythdg", джигурдаДата: { говно: "дгнборпык"}} />
<Пизда пиздаГовно = {props.пиздаДата.говно} джигурдаДата = {props.пиздаДата.джигурдаДата} />
<Джигурда джигурдаГовно = {props.джигурдаДата.говно} />
176 2203823
>>03820
а бля, там скобочки одни проебал, но понятно наверное
177 2203836
>>03820
Зависит от компонента. Но в целом метасвойства и опции компонента пихай в пропсы, а его наполнение - отдельным объектом.
178 2203937
>>00419 (OP)
Есть простое реакт приложение, есть большая мускл бд с которой мне нужно это связать, сделать регистрацию, вход, роли и прочую ебалу
Какими тулзами мне это лучше делать? Хочу что-то с нодой, но как мне это с фронтом связать?
Дали делать бэхэнд, а у меня вообще понимания по нему нет мне пиздец
179 2203967
>>03937

>Хочу что-то с нодой


>Есть простое реакт приложение


next.js
180 2203997
Устал. Решил напиться.
181 2204027
Ну всё. Напился.

Каждый раз как напиваюсь, вспоминаю, что ни с кем не общаюсь в обыденность уже лет десять, и сразу эта ебучая одинокость накатывает.
182 2204031
>>04027
Реакт или ангуляр?
183 2204035
>>04031
Я на жс пишу 20 лет.
Ванила разумеется.
184 2204043
>>04035
Двачую. Еще надо туда жиквару с парой десятков плагинов и select2.
185 2204044
>>03997
Что употребил?
186 2204048
>>04043
Зачем. Ничего не надо. Ванилы хватает на все. Веб-компоненты нативны и полнофункциональны. Современный CSS покрывает 99% вопросов визуализации.
187 2204049
>>04044
Кефир.
yoba.PNG82 Кб, 315x153
188 2204052
да можно ещё себе шаблончиков, сниппетов, модулей наделать на ваниле вместо уёбищнх фреймворков
189 2204095
>>04048

>полнофункциональны


А стилизация в них работает без применения жопаскрипта?
190 2204239
>>00419 (OP)
Аноны, есть приложение на JS. Вопрос - есть ли способ определить, как часто выполняется та или иная функция в нем? Хочу пооптимзировать код, и хочется начать с того, что чаще исполняется.
191 2204243
>>03967

>next.js


+ Prisma ORM
192 2204246
>>04243
Тру няшные кунчики использую TypeORM
193 2204247
>>04239

>есть ли способ определить, как часто выполняется та или иная функция в нем?


Есть.
194 2204249
>>04247
Тогда второй вопрос - как определить, как часто выполняется та или иная функция в JS?
195 2204251
>>04249
Через devtools вставь в функцию нужный тебе фрагмент кода
196 2204254
Блять, месяц назад смотрел вакансии на джуна фронтендера и почти везде требовался React. Смотрю сейчас и большинство вакансий требует Vue. Что за хуйня такая, пиздец! И вакансий будто меньше стало на хх + требования повысились. Видимо я никогда себе работу не найду.
197 2204255
>>04254

>большинство вакансий требует Vue


Нет.

>Видимо я никогда себе работу не найду.


С таким подходом - точно.
Открою секрет, если ты придешь на вакансию вьюдераста будучи реактодебилом , то вполне можешь его пройти, ибо они очень сильно похожи
198 2204259
>>04255
Ну я вот ввожу "Frontend Junior"/"Javascript Junior" и во-первых, вакансий меньше сотни даже на хх (было больше), а во-вторых в некоторых даже PHP еще требуют. Мне что, еще и пхп учить?
199 2204260
>>04246

>Тру няшные кунчики


Не трогают мускуль.
200 2204262
>>04251
Да это же на каждую функцию писать.
Может лучше CallStack смотреть?
201 2204263
>>04255

>они очень сильно похожи


Не надо лгать, после реакта вью неприятен.
202 2204264
Привет, анчоусы. Решил начать делать свою платформу для обучения людей фронтенду в том формате в котором я это вижу.

Буду рад любым отзывам https://frontendly.dev/

Пока только начал, так что только один урок доступен
203 2204265
>>04259

> я вот ввожу


>Junior


Ждун, мидл и синьор это грейды компании, разные компании выдвигают разные требования.
Ищи просто вакансии, грейды указывать в вакансии необъективно, что считай как не совсем адекватно.
Смени хх на линкедин.
204 2204269
>>04264
Доктайп пропустил в первой теме.
Переход к CSS непонятный.

Не хватает оглавления с гиперссылками по урокам.
Адаптивности нет у сайта.
Без интерактива обучение никакое, большинство просто промотает уроки.

Загляни как другие это реализовали, например в гугл сторе есть куча приложений по обучению.
205 2204276
>>04269
Спасибо, за развернутый ответ
206 2204277
>>04262
Может и лучше
207 2204279
>>04269

>Без интерактива обучение никакое



А про какой интерактив речь? Глянул пару приложений в апп сторе. Ну там сухая теория в основном, то от чего я хочу уйти и проекты какие-то за подпиской скрытые сходу.
208 2204315
>>04265
а на линкедине разве не только англоговорящие?
209 2204389
>>03779
Если у тебя пост это компонент, то при добавлении нового поста никакого перерендера не будет, будет именно аппенд.
210 2204399
>>04263
Согласен. Неприятно что на вью та же задача требует в 2 раза меньше кода И осознание проебанного времени на реакте.
211 2204401
>>04399
Типичный вьюдебил.
212 2204405
>>04095
Да.
213 2204408
>>04259

>вакансий меньше сотни даже на хх


Из-за локдауна
214 2204422
Посоветуйте ссылку, где самый удобоваримый материал по паттернам ООП на typescript.
215 2204426
>>04264
Ты молодец, подошел к обучению с практической стороны, обрати внимание на html academy. Можешь много фишечек подчерпнуть. Прогрессбары, ачивки, но самое главное интерактивный редактор.
216 2204442
Гребу на галере за $800, естественно неофициально. Как скоро налоговая схватит меня за очко? Как сделать так, чтобы не схватила?
217 2204445
>>04442
стек, город? На удаленке что ли? Че не сменишь работодателя?
218 2204450
>>04442
Кстати, вдогонку вопрос к другим рабам, которые официально работают, вы как легализовали доходы? Самозанятость? Я вряд ли буду не на наш рынок работать, но для общего развития интересно.
219 2204452
>>04442

>$800,


> Как скоро налоговая схватит


Схватит, пожалеет, докинет 1200$ и в губы поцелует.
220 2204499
да кто такие эти ваши вебворкеры, а точнее где они используются?
221 2204506
>>04445
JS / React, мухосрань, удалёнка. Потому что набираюсь опыта на первой работе
222 2204509
>>04452

>докинет 1200


Это значит что я пидор что всем похуй, покуда я не гребу миллионами?
223 2204515
WebAssembly лол, придётся си учить скоро пасаны
224 2204593
>>04405
Нихуя себе, покажи как.
225 2204594
>>04515

>WebAssembly


хуйня для юнити и фигмы, больше ни на что не годится
226 2204595
>>04499
В гугле поищи, там все есть
227 2204695
>>04509
Знаю парня, который пару лет 600 в месяц делает, налоговая пока не ебет.
228 2204749
>>04442
Если не будешь сам нарываться типа в политике копрозицией заниматься они и смотреть на тебя не будут.
229 2204775
Стоит молодому почти ждуну учить typescript? В принципе мне вроде как нравится эта тема, что невозможно обосраться с типами данных и вот эти все подсказочки, но вроде и без этого норм живется на обычном JS. Я +- знаю JS, ща дрочу рякт (начал неделю назад) и вот шарясь по вакансиям вижу много у кого в требованиях typescript. Стоит того, чи не?
230 2204807
231 2204810
>>04775
Меня обоссали на собесе, когда узнали, что я не знаю TS
232 2204811
>>04810
Тебя обоссали на собесе, потому что ты не знаешь отличий var от let.
Мимо собеседующий
233 2204820
>>04807
>>04810
Услышал вас, тогда надо будет задрочить. А есть какие-нибудь документации на русском,? А то по английской буду в 2 раза дольше его изучать.
234 2204845
>>04820
Если ты не можешь изучить документацию на наглийском, то ты не годишься на должность разработчика
235 2204868
В общем. Код билдится в ./dist изменить этого возможности нет. нужно сделать так что бы после билда бандлы переносились в ./docs попутно очищая одну папку и не трогая другие файлы которые нет необходимости заменять. Чем это проще и удобнее сделать?
236 2204882
>>04868
npm run build && mv -v ./dist/* ./docs/
237 2204891
>>04882
Очистит все подпапки разве нет?
238 2204894
>>04891
Нет, выкинет ошибку если уже есть директория или файл с таким же именем.
239 2204898
>>04845
Я могу, просто хуже дается понимание, на родном языке проще понять.
Наверняка ведь что-то есть, аноны не жмитесь!

Алсо, как я понимаю, тайпскрипт это просто про указание типов? А всё остальное это обычный ЖС?
240 2204901
>>04898

>тайпскрипт это просто про указание типов?


Ну там еще компилятор есть, но его использую в основном только для ноды, на фронт компилирует babel. А так да, в целом он просто про указание типов.
241 2204914
>>04898

>Наверняка ведь что-то есть, аноны не жмитесь!


https://www.google.com/search?q=typescript+уроки
242 2204939
>>04901
Спасибо!
>>04914
Это конечно очевидно. Я думал есть крутые гайды от аноны для анона какие-нибудь.

Алсо, заебал уже вас вопросами, да сегодня на гитхаб запушил 3 раза изменения в файлах, а в квадратиках активности у меня тупо 0. Как это вообще работает?
243 2204942
>>04939
Репозиторий если что приватный и пушил я в собственно-созданную ветку dev, а master простаивает.
244 2204949
>>04942

>Репозиторий если что приватный


this
245 2204957
Всем привет. Возможно, это заранее бесполезно, но все-таки. Есть тут люди, которым нравится менторить? Очень хочу лампового ментора, который проведет меня за ручку по этому тернистому пути, а в некоторых моментах - будет ставить на колени, чтоб не тупых ошибочек не было)0
Не за бесплатно(по цене договоримся) + общение.
246 2204963
>>04868
Добавить `postbuild` скрипт, в котором можешь очищать хоть свою мамашу.
247 2204966
>>04775

>и без этого норм живется на обычном JS


Ты в курсе, что все эти подсказочки в жс файлах в вскоде - результат работы тайпскрипта? Без него ты бы хавал пофайловый жсдок без всяких подсказок лол.
248 2204969
>>04966
Так раз это реализовано на уровне IDE, то нахуя мне самому изучать тайпскрипт?
249 2204978
>>01681
бамп
250 2205001
https://habr.com/ru/post/587254/
Почитал комменты и хочу спросить, жсеры, вы почему такие конченые?
3x (1).gif35 Кб, 112x112
251 2205003
Ура, доделал код тудушечки легендарной. Ну теперь скоро будут 300кк литься. Так неохота css делать нормальный, прям каждая секунда в тягость.
Думаю сначала уже дочитать Кантора (сейчас на 2/3), потом захерачить что-нибудь мощщщное на тайпскрипте.
https://ferrisbuellerscodeday.github.io/todo/
252 2205043
>>04969
Тому что вс код будет тебе подсказывать только в пределах одного файла.
253 2205048
>>05003

>Думаю сначала уже дочитать Кантора


Дурачёк что ли? Какой Кантор? Лучше бы учебные материалы гугла почитал и то больше пользы.
https://web.dev/
https://developers.google.com/web/
254 2205059
>>04957

> Есть тут люди, которым нравится менторить? Очень хочу лампового ментора


Если ты тян, то иииизейшая задача, тебя с руками и ногами оторвут опытные кодеры песдалисы. Если ты кун, то уже сложнее, чтоб тебя бесплатно менторили надо, чтоб ты был альфаЕрохиным. Только для баб и для альфаЕрох всё бесплатно и везде дорога. Если ты не из них, то вероятно придется платить баблоу.
255 2205061
>>04957
А ещё ты можешь как-нибудь тяном прикинуться. Придумай что-нибудь. Я вот во втентаклии сидел в одной какой-то беседе для вкатунцов и для тех кто уже вкатился, там когда парни какие-то вопросы задают, то другие на них лениво и пассивно-агрессивно отвечают, типа загугли ёпта. А там одна тёлка начала жаловаться, что до диплома чуть-чуть осталось, а она не сделала на Реакте приложуху. Так там сразу нарисовался олд Одмен 35+ лвл. и бесплатно за вечер ей всё накодил.

Так что притворись тяном и тебе всё сделают от и до.
Screenshot20211107-101339.png195 Кб, 720x1440
256 2205082
>>05003
Der Porridge.
257 2205085
>>04969
Тебе, чтобы эти подсказочки читать, один хуй синтаксис тайпскрипта нужно знать.
258 2205111
>>05061
Я и так тян. Мне претворяться не надо)
Но и прошу сделать это за бесплатно. У всего своя цена должна быть, иначе челик просто однажды сольется.
Есть вар, конечно, попиздовать на сайтики менторов, но там оверпрайс пиздец. Отдавать за занятие по 3.5-5к - пока возможности нет, я не наносек.
259 2205117
>>05111

>Я и так тян


>Но и прошу сделать это за бесплатно


Значит от желающих учить отбоя не будет.
260 2205118
>>05111
Песдалисы скорее сами платить будут, чтоб учить тяна.
261 2205120
>>05111
>>05117
Блин!! Я ошиблась!! НЕ ЗА БЕСПЛАТНО.
Ну а где этих желающих искать? На лджс оставила объяву - спустя месяц никто не отписал.
262 2205127
>>05111
Допустим, ты не семен. Какая у тебя цель? (Например, хочу знать это и это, через столько времени) Какая у тебя база? (Что ты уже знаешь и на сколько ты оцениваешь свои текущие знания?)
263 2205131
>>05127
Если глобально - хочу сменить текущую работу и забыть как страшный сон. Если по факту - хочу на данном этапе делать сайтики(по типу как с awwwards, там челы такое месиво устраивают, на их шизоидном расстройстве можно очень хорошо набить руку) или браузерные приложения. (мечта освоить реакт(натив же да) и перейти в моб. разработку, но это потом как-нибудб)
Что умею? Это вопрос интересный, по стандарту уже неплохо ориентируюсь в html, css. По лерн ява скрипт начала изучать переменные, объекты, массивы, условия. Дальше пока не прошла.
264 2205160
>>05082
Шо? Код избыточный или че?
265 2205165
>>05048
Хороший справочник. Прошелся по нему быстренько и потом уже знаешь, что нужно и где быстро посмотреть.
За ресурсы спасибо, посмотрю.
image.png37 Кб, 1330x192
266 2205173
Как исправить эту ошибку? В гугле ничего толкового не нашел, там все решается назначением типов каждому из элементов массива, но я не знаю заранее сколько их будет.
267 2205177
>>05131
На вебкам иди, какого хуя в айти забыла
268 2205209
>>05173
unknown[]
269 2205278
>>05131
Покупаешь/скачиваешь курс Creative JavaScript от Dev Ed. По JS можно также глянуть курсы от Brad Traversy и Net Ninja. Я не помню их названия, на udemy/рутрекере есть.

Когда посмотришь 3 разных курса по JS, то начнешь нормально ориентироваться в языке. Алсо я бы не выбирал курсы длительностью больше 25 часов.
Дальше смотришь этого чувака - https://frontendmasters.com/teachers/will-sentance/
Начни с Hard Parts, v2. Если денег на подписку нет - рутрекер или GitHub Student Developer Pack.

Затем Creative React and Redux от того же Dev Ed и снова Frontend Masters уже по Реакту. Обязательно чтение документации. Вопросы в @react_js в телеге.

Менторы не нужны, вырабатывай навык самостоятельного поиска информации и правильного задавания вопросов.
270 2205279
>>05131
Алсо можешь записаться сюда - https://rs.school/js-stage0/
Там будут менторы. Сообщество у них классное.
271 2205296
>>05160
. Нестрогое равенство.
. Используешь лет, хотя ничего не меняешь.
. Глобальные переменные.
. Все строится на ифов.
*. Не стрелочные в аддевентлистере.
По скриншоту это. Если лень самому вёрстку делать, пизди готовые решения, выглядит как кака.
272 2205316
>>05296
Не стрелочные анонимки хотел сказать? Листенеру тащемта похуй, какие функции передевать, хоть ассинхронные.
273 2205318
>>05173
аргумент с рест оператором должен быть последним
image308 Кб, 453x604
274 2205325
Аноны есть задача, не могу ее решить, задавал на StackOverflow, но мне не помогли. Может я вопрос как аутист задал, не знаю.
https://ru.stackoverflow.com/questions/1346833/js-jquery-загрузка-папки-на-сервер-php
275 2205327
>>05325

>Может я вопрос как аутист задал, не знаю.


Разумеется - тяночкой не притворился и ещё ждал какой-то помощи
276 2205328
>>05325

> https://ru.stackoverflow.com


На эту парашу вообще кто-то заходит кроме таких дурачков как ты?
ламповая тян.mp4971 Кб, mp4,
480x640, 0:09
277 2205329
>>05327
я тян, вот пруфы
image.png7 Кб, 635x229
278 2205330
написал функцию как добавлять текстовы поля.

как написать функцию которая удаляет послее добавленное поле??
279 2205331
>>05328
Ну, в свое время мне там помогли
280 2205333
>>05330

>как написать функцию


Ну тыкаешь на кнопочки на твоей клаиватуре и пишешь код, так же как с первой функцией.
281 2205347
>>05003
Валидации нет, при удалении/добавлении таска перерисовывается заново весть лист, если будет 1000 тасков? Добавь хотябы id = Math.random() и удаляй не по индексу, а по id
282 2205349
>>05296

> Нестрогое равенство.


Видимо вспомнил об этом на середине или в конце и забыл в остальных местах поменять.

>. Используешь лет, хотя ничего не меняешь.


Переделаю на конст.

>. Глобальные переменные.


Засунуть всё в одну глобальную функцию считается за нормальную альтернативу?

>. Все строится на ифов.


Наверное я как-то неправильно понял делегирование событий.
Лучше просто по id кнопок назначить листенеры, раз кнопок мало?

>*. Не стрелочные в аддевентлистере.


Это действительно глаза мозолит? Или есть какая-то практическая польза в данном случае?

В любом случае спасибо коммент.
image188 Кб, 400x400
283 2205353
>>05325
бамп вопросу
284 2205361
>>05347
Да что там валидировать, это же записульки. Ну максимальную длину ограничу.
Ну я хотел точечно перерисовывать, потом подумал, что тут никто не будет 1000 тасков делать и сделал сяк.

>Добавь хотябы id = Math.random() и удаляй не по индексу, а по id


Мне нужно будет иметь коллекцию с id и проверять её при генерации нового id? Хочется чего-то более элегантного, чем рандом id, буду думать.
285 2205363
Смотрела видео по собесам, конкретный ступор на задачах возникает. Если юзать кодварс активно, прорешать там все вдоль и поперек, на собесе будет легче?
286 2205367
>>05361

>Хочется чего-то более элегантного, чем рандом id, буду думать.


crypto.randomUUID()
287 2205368
>>05363
Посыпишься на вопросе отличия var от let.
DearestWelltodoCassowary-sizerestricted.gif892 Кб, 300x300
288 2205375
>>05367

>crypto


Спасибо. А он уникальный будет, потому что на основе времени генерит?
image.png99 Кб, 1152x648
289 2205388
image67 Кб, 534x604
290 2205411
>>05353
Последний бамп, меня кто нибудь слышит?
291 2205417
>>05368
Это ж селёдочка, её за такое ласково пожурят и возьмут на работу чтобы "вот заодно и научишься"
1628189454295.png883 Кб, 640x640
292 2205472
>>05347

> при удалении/добавлении таска перерисовывается заново весть лист, если будет 1000 тасков?


Это же важно только если как он на чистом js через innerHTML, а если реактом, то наоборот нужно вверх всю хуйню поднимать?
293 2205486
>>05472

>Это же важно только если как он на чистом js через innerHTML


Если ты юзаешь innerhtml, то там в любом случае будет полная перерисовка всех элементов, т.к. все старые элементы удаляются и создаются заного. Обработчики при это тоже теряются
code.png423 Кб, 2252x1638
294 2205543
Делаю таймер на рякте, Есть state stop по умолчанию false. По клику на кнопочку state stop = true;
В это время крутится функция, где посекундно с помощью (setTimeout) убавляется значение currentValue (запрошенное время - new Data.getTime()).
Далее есть условие если currentValue меньше 1 сек или меньше 0, то clearTimeout.
Думал, что с кнопочкой будет изи, просто добавил в условие еще и stop, т.е. if (currentValue < 1000 && currentValue > 0 || currentValue > 0 || stop) -> clearTimeout
Но.. нихуя. Кнопочку жму, state stop становится true, а функция как продолжала крутиться так и крутится. Гуглил, ничего дельного не нашел, обращаюсь к вам, аноны.

Что делать? Куда копать?
295 2205585
>>05486

> Обработчики при это тоже теряются


При хорошо заделигированных компонентах элементы списка в обработчиках не нуждаются.
296 2205589
>>05543
stop пологай в своем timer'е
297 2205591
>>05543
Таймеры всякие надо в useEffect делать.
298 2205598
>>05411
Да напиши ты в гугле на инглише и пиздуй на нормальный стопкапереполнена
299 2205602
>>05585
Расскажи пж как будешь делигировать обработчики событий наведения мыши без просадки производительности, я посмотрю.
300 2205603
>>05591
Закинул в useEffect, тоже самое.

>>05589
Когда таймер идёт пишет false, т.е. всё правильно. Далее когда жму на кнопочку логает true, а после продолжает крутиться отсчитывая секунды (но будто как-то немного ускоренно) и логает уже stop: false.
301 2205605
>>05602

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


:hover
302 2205609
>>05605
Как мне сделать тултип над элементом списка, который не выезжает за границы экрана, если список находится рядом с границей?
303 2205618
>>05609
Как у тебя мобилкоюзеры увидят такие тултипы?
304 2205630
>>00419 (OP)
Есть ли смысл заказывать менторство, через Foxminded, например? Интересует не теория, курсы и прочее с чем сам разбираюсь/разберусь, интересует именно обратная связь своих навыков и умений от опытных разрабов + если есть возможность поработать над реальным проектом, пусть и на роли червя пидора, то тоже неплохо. Или менторство уже никому не нужно в 2к22?
305 2205638
Если я буду генерировать ключи для новых элементов в списке при помощи Date.now(), этож будет достаточно уникально? Я понимаю что реалистично мне этого естественно хватит, но как вообще ровные пацаны делают?
306 2205640
>>05638
Для демки вполне норм.
307 2205646
>>05603
Ебался из-за одной строчки 5 часов, пиздец.

В общем решение было в том, чтобы закинуть всё в useEffect, дать зависимости на stop/start и сделать return () => clearTimeout(timeout);

Я так и не понял как это работает, но это работает. Можете пояснить?

У меня в useEffect 3 функции (инициализации таймера - проверка на ошибки и т.п, если всё ок - запускает саму функцию таймера, внутри этой функции в конце выполнения лежит setTimeout, который обновляет функцию каждую секунду, пока не будет неких условий).

А в конце самого хука useEffect этот return. Но я кажется уже понял как работает.

На любое изменение зависимостей он выполняет код, указанный после return и выходит из этого хука?
308 2205652
>>05618
Не меняй тему. Лови еще вопрос: как мне при наведении на элемент списка (допустим, это ссылка) сделать предазгрузку какого-либо ресурса (по аналогии с докой реакта)?
309 2205654
>>05638

>этож будет достаточно уникально?


А ты подумал, что будет, если у тебя два ключа сгенерируются в пределах 1 мс? так и будет, если у тебя не совсем некропекарня используй crypto.randomUUID или https://www.npmjs.com/package/uuid
310 2205659
>>05638
Просто сделай обычную переменную и увеличивай ее при создании элемента списка, наркоман.
311 2205660
>>05654
Вообще не будет, вряд ли пользователь успеет забить два пункта за миллисекунду, но вообще спасибо. а как сделать чтобы https было? или это тупа от сервера зависит?
312 2205664
>>05646

>Можете пояснить


Без кода и пояснять нечего
313 2205667
>>05664
Да просто, что делает return в useEffect? У меня как-то в голове не укладывается, чтобы в этом хуке был return.
314 2205671
>>05652

>Не меняй тему.


Никто тут не меняет тему, это ты тут создаёшь проблемы, а потом решаешь их говнокодом.

>как мне при наведении на элемент списка (допустим, это ссылка) сделать предазгрузку какого-либо ресурса


Какую нахуй предзагрузку при наведении? Ты так и не ответил на вопрос, как мобилкоюзеры будут твои оухенные ховеры активировать?
315 2205682
>>05667
Хук useEffect(() => setInterval(() => updateTodoState(todoId), 1000), [todoId]) будет выполняться заново каждый раз при смене todoId, например когда пользователь перешел со страницы одной тудушки на другую. И очевидно каждый раз будет создаваться новый такой таймер и висеть на странице бесконечно, когда он нахуй не требуется. Чтобы такого не случалось, нужен способ убрать за собой говно, т.к сам реакт не может догадаться, как ты насрал и где. И если реакту нужно выполнить указанную useEffect функцию заново(например при ре-рендере), то сначала он выполнит функцию, которая вернулась и хука на предыдущем рендере, потому что подразумевается, что ты в эту функцию положишь логику, которая будет убирать за собой насранное в useEffect, например удалит созданный таймер.
316 2205683
>>05682
Отлично, спасибо за охуенное объяснение, всё встало на свои места!
317 2205690
>>05660

>а как сделать чтобы https


Если ты через localhost или 127.0.0.1 заходишь, то браузер считает, что это https.
А в других случаях надо на сервере сертификаты юзать.
>>05671

>Какую нахуй предзагрузку при наведении? Ты так и не ответил на вопрос, как мобилкоюзеры будут твои оухенные ховеры активировать?


Пчел, изначально был кейс, в котором ты решил выебнуться охуенным знанием жопаскрипта и предложил вместо событий использовать псевдоклассы в цсс. Я тебе вопросами намекаю, что ты тут неправ и псеводоклассами некоторые достаточно частые кейсы нельзя решить.
318 2205692
>>05690
>>05660

>то браузер считает, что это https.


Ну не совсем так конечно, но он включает все фичи, доступные только для https
319 2205702
>>05048
мдн уже не катит?
320 2205703
>>05702
Катит, но скорее как справочник. Учебник из него такой себе.
321 2205748
У меня возникло два необычных вопроса.

1. Знание Redux может пригодиться Angular-разработчику?
2. Знание RxJS может пригодиться React-разработчику?
322 2205763
>>05748
1. Ngrx
2. Redux-observable
323 2206237
>>05702
Катит. Собственно какая разница и гугл и мозилла - оба выпустили браузеры. Они могут рассказать о своих же браузерах в миллион раз больше, чем абстрактный кантор.

Вся разница - у одного хром, у другого файрфокс. Всё.
324 2206243
>>05660

>Вообще не будет, вряд ли пользователь успеет забить два пункта за миллисекунду


Пользователь мб и не успеет, а event-loop, который будет отрабатывать события пользователя вполне может. Так что лучше сделай сразу по нормальному, либо на бэке изначально прописывай каждой тудухе уникальный id, либо делай это на клиенте
325 2206247
Недавно открыл для себя codewars, там в основном все сводится к регулярным выражениям. В разделе ещё пишут про leetcode. Стоит ли обращать внимание обычному js прогеру из Web? Или это скорее для суровых с++ и java?
326 2206257
>>06247

> скорее для суровых с++ и java


Это для суровых олимпиадников из <anyLanguageName>. Если хочешь задрочить алгоритмы и научиться в оптимизацию то можешь закатываться на любом языке.
327 2206312
Хочу к своему java spring пету прикрутить UI на JS. Никогда на нем ничего не делал, кроме лаба3.js, что посоветуете годного, чтобы потом если что самонадеянно писать что я фулл стек? Короче что пригодится бэкендеру?
image.png69 Кб, 479x257
328 2206327
329 2206331
Есть библиотека на жквери, я поправил саму библиотеку в node_modules, все работает прекрасно, но если кто обновит фронт, то все.
Нормальна ли практика создания своей библиотеки на основе той с правками или это пиздец? Подключил бы свою библиотеку с правками и жил бы не тужил, а так что-то сложно.
330 2206332
>>06312

>что посоветуете годного, чтобы потом если что самонадеянно писать что я фулл стек


Если хочешь накостылить фастом и что бы работало - Vue 3, если хочешь разобраться и именовать себя фулстеком - React
331 2206333
>>06331

>ормальна ли практика создания своей библиотеки на основе той с правками или это пиздец


Да.
332 2206341
>>06327
От того, что разраб не додумался сделать проверку на валиданость координат никакой тайпскрипт не спасет.
333 2206477
334 2206512
>>06331
Ты начинаешь что-то подозревать о папке lib.
335 2206558
Аноны, есть какая нибудь статья о том, как работает атрибут autocomplete в разных боаузерах? Например, autocomplete="off" не отключает автокомплит полностью. Спрашиваю, чтобы знать нюансы
336 2206592
Я не могу придумать какое приложение сделать
337 2206594
Пасанята, слух, я вообще из другого раздела, нам недавно завезли новый UI фреймворк, и там всё крутится вокруг State, тип когда стейт изменяется то интерфейс обновляется, и сегодня я видел странный сон, что мне нужно зайти в раздел к вебмакакам и спросить про реакт. Якобы в реакте то же всё завязано на стейте. И ещё надо спросить, как вы считаете, что круче Реакт нейтив или реакт rx?
338 2206606
>>06594
state = состояние
image.png25 Кб, 695x359
339 2206615
вот так вроде это выглядит, стейт - это как отдельный контейнер с информацией
340 2206653
>>06615
Как же вас жаль с ващими говностейтами.
Мимо ангуляр-господин.
341 2206693
>>06653
А у вас как там все устроено?
342 2206707
>>06693
Храним всё в переменной, но называем её по-другому.
343 2206724
>>06707
а переменная какого типа?
344 2206834
>>06724
Сам подумой. Какие переменные есть в тру ООП?
323.png78 Кб, 760x446
345 2206892
Поясните, нужен ли return в том месте, где стрелка? Если не нужен, то почему?

new под капотом будет возвращать объект this функции UserCreator?
346 2206905
>>06834
интеджер и флоат
347 2206909
>>06892

>unless the function returns its own alternate object, the new-invoked function call will automatically return the newly constructed object.

348 2206944
>>06834

>Какие переменные есть в тру ООП


Циклы, операторы, ключевые слова, комментарии?
349 2206965
Объясните пожалуйста в чем отличие между emotion и styled-components? Расплодилось что-то этого всего. Еще MUI какой-то есть...
350 2206979
>>06965
шо то говно, шо это. Истинные синьор-пиздаболы 300кк/нс использую css модули или scoped стили.
351 2207071
>>06979
Харкачерирую. Истинные синиоры используют БэЭнВэ
352 2207081
>>06592
prilozenieDlyaVkata.js

Внутри конкурентные запросы на апи GET anal/job/

Фронт должен слать 150 запросов в минуту в виде ворд документа, все должны обработаться.
Если респонс 200 { ok: ok, message: posholnahuy } , то инстанс Vkatun помечается как zopaGorit и фетчит страницу job.ru/piza-delivery.

Все должно быть паралельным и асинхронным.
Бек должен парсить док, если там есть строчка "zaEdu", то с вероятностью 1% / количество запросов с "zaEdu" за последний час, отправлять "vi priniaty".
353 2207083
>>05349

>Это действительно глаза мозолит? Или есть какая-то практическая польза в данном случае


Меньше писать, меньше читать, выглядит опрятнее, модно молодежно, а не как у этих вот, это как писать свой велосипед сортировки пренебрегая использованием метода сорт.
354 2207103
>>05411
Я тебе по секрету скажу, что если нужна помощь тут, сначала надо кратко написать его суть, а потом уже ссылку. Или же просто копипаст сюда сделать.
Иначе это выглядит как "требуется розраб, все подробности в личку", естественно любой нормальный человек скипнет долбоеба.
355 2207144
>>06979

>Истинные синьор-пиздаболы 300кк/нс использую css модули


А нахера вообще придумали эти эмоциональные стулед css в js, чем привычный подход с прикручиванием CSS так плох был?
356 2207184
Сап тайпоскриптеры, есть ли смысл вообще дрочиться со следующим?
Условно есть
type RgbColor = string
type HexColor = string

Из-за структурной типизации понятное дело тайпчек идёт нахуй, какие есть выходы из данной ситуации, и если их нет, то нужно ли вообще типы оставлять как хинты для девов (ну типа тайпчека нет, но ты же не дурак 'hello world' передавать), или просто в комменте к функции описать и не тратить время на это?
1427199314na-kodovom-zamke-vidno-kakie-knopki-nazhimat.jpg169 Кб, 877x722
358 2207196
Atom или WebStrorm?
359 2207198
>>07196
Лада гранта или форд транзит?
360 2207201
Что нужно знать перед изучением Angular?
361 2207203
Как думаете, в будущем добавят в браузеры интерпретаторы для typescript, или js навечно?
362 2207206
>>07201
TypeScript, асинхронный JS, RxJS, английский язык.
363 2207207
>>07203
А зачем?
изображение.png46 Кб, 300x298
364 2207210
>>03271
Ух, спасибо братва, разобрался. Оказывается при срабатывании события в обработчик попадает очень дохуя инфы, огромный массив содержащий целиком всю карту, это очень дорогостоящая операция и чтобы такого не происходило нужно было этот planeBuffer нарезать на много отдельных буфферков, тогда при клике в обработчик попадет лишь небольшой массив. Ебать я дебик
365 2207220
>>07206

>английский язык


Зачем?
366 2207231
>>07220
Чтобы вместо позиции "анальная макака" у кабан кабаныча иметь возможность работать на позиции "anal monkey (contractor)" на джона бора. на самом деле чтобі кабан кабаныч мог тебя дороже джону продать очевидно же
367 2207266
Есть один инпут
<input type="text" value={value} onChange={inputHandler} onKeyPress={keyHandler}/>
И у него есть
const keyHandler = (event) => {
if (event.key === "Escape") {
alert(event.key);
}
if (event.key === "Enter"){
alert(event.key);
}
}
Чому с энтером работает, а с эскейпом нет? Как сделать чтобы работало?
368 2207277
>>07220
Качество гугления в разы выше как минимум. Да и намного короче можно прямо подробно сформулировать запрос и найти быстро че надо.
369 2207285
>>07277
Гугл запросы составлять умею, но читать не всегда, так как некоторые конструкции и слова не понимаю.
370 2207287
>>07266
А с onKeyDown работает, нахуя оно выёбывается?
371 2207291
Дайте нормальный урок по HTML и CSS, постоянно забываю. js знаю, а эта хуета вылетает из головы
373 2207296
>>07294
Нихуя.
374 2207310
>>07266
'keypress' эвент надо вешать на window
375 2207339
>>07291
Сверстай пару макетов, 2-3 дня потрать и запомнить навсегда.
Screenshot20211109-011157.png170 Кб, 720x1440
376 2207393
Поставь себе ыорматтер, по нажатию на сохранение или на сочетание клавиш твой код становится красивее, добавляются нужные отступы, удаляются лишним отступы. Поможет в ксс, хтмл, жс и другое.
Мимо тот же придирчивый анон.>>05349
IMG20210929130344921.jpg120 Кб, 640x640
377 2207399
Никто не хочет практики? У меня на галере есть проект, который сейчас временно приостановили, если кто из вкатышей Анонов хочет попробовать себя на реальном говнопроекте, могу покидать задачек, поменторю. Проект на нативе + бэк ларавел.
378 2207413
>>07399
А на работу возьмете?
379 2207415
>>07413
Что можешь?
380 2207417
>>07399
Напиши в телегу, пожалуйста.
@twinkam22
Покажу портфолио, расскажу о себе.
381 2207544
Как "собрать" пропсы конкретного базового ряктовского HTML элемента в один интерфейс, который можно экстендить?
Допустим у дива пропсы выглядят так:
DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>

Пока я ничего сложнее создания DivProps extends DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement> не придумал. Но ведь это костыль, плюс придётся писать новый интерфейс на каждый компонент с новым HTML элементом. Наверняка же можно просто по строчному ключу ссылаться на JSX.IntrinsicElements и получать новый манятип без импортов всяких HTMLAttributes.
382 2207638
>>07544
Таки всё намного проще оказалось: достаточно ComponentPropsWithoutRef<"div">. Всё равно нужно создавать новый интерфейс на каждый пук. Как сделать так, чтобы условный BaseProps<K> выбирал из заданного списка валидных HTML тэгов и вставлял результат в ComponentPropsWithoutRef<K>? Где-то в доме хранится же этот список хотя бы словарём.
383 2207673
Подскажите, next js используют в качестве сервера, без express-а? Теоретически ведь можно, но почему тогда существует стек next js + express, причем обычно так и используют.
384 2207677
>>07673
Потому что пока ты залезешь в базульку и выполнишь бекенд действия на нексте, ты будешь тормозить 1000000 юзеров, которые просто ждут от веб-сервера статику
385 2207679
https://habr.com/ru/company/piter/blog/587888/

Почему кто-то всерьез обсуждает исползовать var или let/const в 2021? Вроде как Серьезные Пацаны уже давно порешали, что использующий var сразу же объявляется чуханом, переезжает под шконарь и теряет доступ к общаку
386 2207680
>>07677
Падажжите, люди для статики используют эксперс вместо нжинкса? В чем смысл?
387 2207681
У меня есть хук
const [items, setItems] = useState([]);
Потом items я передаю как пропс <ItemIndex items = {items} ... />
А внутри ItemIndex я использую props.items.map(...)
И всё работает!

Я собрал это вебпаком, загрузил на гитхаб и оно блядь пишет что TypeError: t.items is null когда пытается вызвать map видимо.
Че за хуйня? Я обосрался с настройкой вебпака?
388 2207682
>>07681
Так мб не props.items.map, а просто items.map?
389 2207683
>>07294
Какой из них, ссылка не кидает на конкретный
390 2207684
>>07682
Чому? Я в пропсах передаю же.
Но это не важно, оно же работает, я не понимаю почему одно работает, а другое — нет.
391 2207685
>>07673
Под капотом у него экспресс. А насчёт отдельного сервера - так это норма на бэкенде плодить сервера, микросервисы же. И если условный API сервер не отдаёт статику - то ему нахуй не сдался весь некстовский вагон в зависимостях. Плюс некстовский сервер можно делегировать до полноценного вротенд сервера, без всяких запросов в бд.
392 2207687
>>07673
Так запрос в базу не синхронная операция. А во вторых вряд ли запрос в базу тормозит статику, я конечно не знаю что там внутри, но вроде солидный фреймворк, неужели они такой проблемы не решили.
393 2207688
394 2207689
То есть когда я вызываю "webpack serve --mode=development" всё работает.
А когда "webpack build --mode=production", то что получилось кидает ошибку.
395 2207691
396 2207692
>>07685
Ну так и зачем нексту тогда функционал бэка? Какая область применения?
397 2207694
Кстати а что такое микросервисы, это когда для каждого эндпоинта по серверу? А как же переиспользование кода?
398 2207695
Сап мне нужно было чтобы после ввода в инпут при клике на голубой фон изменения сохранялись (соответственно onBlur) и инпуты превращались в обычный параграф, но при клике на textarea чтобы onblur не срабатывал, а срабатывало изменение textarea.
Я как-то запилил через mouseDown костыль, насколько хуево (алсо в итоге я типом присваиваю элемент как инпут хотя он на самом деле textarea, по другому typescript Ругается?
image.png10 Кб, 715x114
399 2207703
>>07695
Ладно я пофиксил, вместо всего этого добавил условие в onBlur хендлере
400 2207711
>>07694
На каждую комбинацию параметров по сервису.
И на каждый день в году тоже - баланс лоадинг, слышал?

не для каждого. переиспользование - версионированные шейрд либы в пакете
микросервисы говно
401 2207715
>>07711
Хуй сосешь?
402 2207792
>>07689
>>07681
А, я понял, я подгружал items из local storage, а так как там ничего не было, оно сувало туда null, а обычно я этого не замечал, потому что писал туда до этого что-то и там был пустой массив.
403 2207817
>>07792

>У меня есть хук


>И всё работает!


ошибку свою понял?
404 2207830
>>07817
Нет, а шо?
405 2207857
https://habr.com/ru/post/532432/

JS на числодробилке с простыми числами пососал у С++ лишь на 25%. Все остальные (за исключением ГОвна) - в разы. Как так?
image.png4 Кб, 431x47
406 2207861
let a = [1,2](function() { alert(a) })()

каким боком это работает объясните, т.е. мы пытаемся присвоить к переменной массив, а после него идёт вызов функции, ошибка пикрелейтед выскакивает
407 2207873
>>07861
Ты пытаешься вызвать массив как функцию, в которую передаёшь другую функцию. Потом результат вызова первой функции еще раз пытаешься вызвать как функцию и уже её результат присваиваешь переменной.
408 2207881
>>07857
Не знал что Go быстрее крестов.
409 2207890
>>07857
жиды процессоры пилят под жс очевидно же
410 2207896
>>07873
ниче не понял, [1,2] - это массив, а потом идёт iife, в каком моменте я вызываю массив как функцию?
411 2207900
>>07896
JS это не твое. Иди читай как вызывается функция, потом еще раз перечитай и только потом задай вопрос сюда.
412 2207901
>>07861
Почему просто не поставить ;?
413 2207902
>>07896

>iife


Тут нет iife, ты вызываешь массив как функцию.
image.png49 Кб, 1090x270
414 2207905
>>07861
Че работает? Ниче ж не пашет
415 2207909
>>07900
аааа кажись дошло, а почему жс может вообще подумать, что я вызываю массив как функцию? он не может мне написать vi dalbaeb error
416 2207919
>>07909
Потому, что в ЖС благодаря ООП ты можешь расширить массив таким образом, что он может работать как функция.
417 2207947
>>07919

>благодаря ООП


Хуй будешь?
418 2207949
>>07947

>Хуй будешь?


Конечно, я же ангулярщик.
419 2207990
пудж кинул hook
420 2208063
Где почитать че это за пакеты такие? Че за npm?
421 2208106
>>08063
документация ноды идеально объясняет всё на мой взгляд
422 2208127
>>08106
О, нашел, спасибо. Не сразу понял где у них там что.
423 2208211
Есть спарсенный текст из pdf, вроде всё окей, но некоторые блоки текста имеют вид "хуйняГОВНО". Как их можно разъединить пробелом?
424 2208215
>>08211
Хуй его знает, тут не верстальщики пдээфов сидят.
425 2208242
>>08215
Да мб регулярка какая нужна, я не шарю в них просто.
image.png1,3 Мб, 1200x671
426 2208269
Объясните дурачку. Есть index.js в реакте, туда я импортирую main.css из папки styles, в main.css у меня идут импорты: global.css, reset.css, variables.css. В reset.css есть обнуление margin: 0 у многих элементов. Проблема такая: в css модуле компонента Filter.module.css я элементу ставлю margin-bottom: 2rem, НО нихуя не меняется. В панели разработчика в хроме эти 2rem перечеркнуты, то есть получается переписаны, да? Насколько я понял, они переписаны обнулением в reset.css... или нет? Тоже самое я делал и с scss, но проблема не пропадала, так че за хуйня то? Пробовал reset, global и variables в один файл кидать и уже его импортить в index.js, но проблема не пропадает... Жопа дико горит из-за этих непоняток или из-за того, что я тупой...
427 2208279
>>08269

>или нет?


Возьми да посмотри
428 2208293
>>08269
Блять сбилди свою сбор очку и посмотри, что там у тебя в CSS высирается. Вангую ты в индексе импортируешь стили после всех остальных импортов, так что они у тебя идут последними в сборке.
image.png268 Кб, 822x688
429 2208354
оправдывайтесь
430 2208355
>>07715
Нет. Я не пропагандирую микросервисы.
431 2208358
>>08242
мб и нужна, нам то откуда знать?
>>08354
Эта хуевина от мелкософт SSR уже научилась поддерживать хотя бы для реакта? Тогда какой смысл от этих сухих циферок?
432 2208362
>>08358

>Эта хуевина от мелкософт SSR уже научилась поддерживать хотя бы для реакта? Тогда какой смысл от этих сухих циферок?


Смысол в бекенде. SSR а от майков я вообще не помню для ЖСных либ.
Вы SSR юзерам отдаете?
433 2208363
>>08362

>Смысол в бекенде.


Как будто на серьезных проектах используют ноду как бекенд, лол.

>Вы SSR юзерам отдаете?


Да
434 2208364
>>08363

>Как будто на серьезных проектах используют ноду как бекенд, лол.


Справедливо.

>>Вы SSR юзерам отдаете?


>Да


Хм. А зачем? Это же, вроде бы, для ботов только, не?
435 2208365
>>08364

>А зачем?


Строгие требования к времени FCP
436 2208366
>>08365
Увожаемо.
Ну, теоретически, это легко вынести в отдельный кластер. Да и SSR это не дев, а инфраструктурная задача .
Кешируете резалты или не?
437 2208367
>>08364

>Хм. А зачем? Это же, вроде бы, для ботов только, не?


Гугл тебя нахуй пошлёт с бот-онли серверным рендером.
438 2208370
>>08366

>Кешируете резалты или не


Ну у нас этим основой бек занят в виде пыхи, нода ререндерит каждый раз с нуля по сути. да и похуй, там в пике 10% загрузка процессора
439 2208371
>>08367

>Гугл тебя нахуй пошлёт с бот-онли серверным рендером.


Чойта? Он пошлет нахуй только если у тебя существенно контент с SSR отличается от контента с CSR
440 2208586
Щас проще верстальщиком устроиться или React разрабом?
441 2208589
>>08586
На зарплату, кстати, похуй. Главное вкатиться и опыт получить, а дальше уже разберемся
442 2208591
>>08293
хорошо вангуешь, пасиба!
443 2208592
Как создать шаред либу в js, чтоб использовать ее в нескольких проектах? Ее через гит заливать на проекты или нужно как то в npm засунуть?
444 2208623
>>08586
Реакт разрабом, сейчас верстальщиков полноценных мало кто ищет, все пилиться на готовых либах.
Стикер575 Кб, 250x250
445 2208627
>>08363

>серьезных проектах

446 2208628
>>08623
скорее ушлые кабаны считают нахуя платить еще и верстале еще фронт и сам нахуярит он ж хтмл и кцц сам знает
447 2208631
>>08623

>готовых либах


Каких например?
И еще пара вопросиков: откуда инфа? Ты сам работаешь вообще?
448 2208633
>>08631
либы то может и готовые а кастомные конфиги для вебпака писать будешь сам
449 2208639
>>08631

>Каких например?


Да блять миллион их. Ant, Quasar, тот же Bootstrap.

>ы сам работаешь вообще?


Да, я премидол реактодебил
>>08633

>кастомные конфиги для вебпака писать будешь сам


Как будто ты их каждый день будешь писать.
450 2208675
>>08592
Создавай отдельную репу под либу и подключай её гит-модулем в нужные проекты. Так ты можешь пердолить фиксы для либы, не засирая историю коммитов в этих проектах. NPM пакет это уже более поздняя стадия, когда у либы есть устаканненый воркфлоу и правила версирования.
451 2208696
мувисёрчер на реакте и беке на файрбейсе должен ужасно лагать? он фетчит все с тмдб апишки, больше ничего не делоет
452 2208701
Хаха зумерок-лукист сам страшный с тормознутой говнонодой бомбит:
>>08627
453 2208702
>>08696
Фетчай бекграунд воркером, не?
454 2208704
>>08701
Бумерок спок.
455 2208709
>>08704
бумерок то прав, крупняк на ноде не пишут, мелкое, среднее запросто за счет скорости разработки, доступности погромистов и более-менее нормальной работе, а на хайлоаде нода обосрется
456 2208715
>>08709
Какой "крупняк", дедуль? У нас 2021 на дворе, микросервисы во все щели
457 2208717
>>08709
Давай пример недостижимого хайлода на неноде.
458 2208734
>>08702
поподробней
459 2208745
>>08717
любая потоковая обработка видео, генерация картинок и прочий процессинг нода не сильно любит и производительность там так себе, не говоря уж о нейронках. когда тестируешь асинхронных код в8 любить чудить, а если уж кодовая база большая ну его нахуй.
460 2208747
>>08715
Что тяжелее: киллограм ваты или килограм гвоздей?
461 2208748
>>08715
на микросервисах не обязательно 100% один язык, а тут затирают про монолит
462 2208751
>>08745
А разве для решения подобных проблем там не используются C++ аддоны и N-API?
Я не доебаться хочу, просто мимо проходил
463 2208752
>>08734
Отедльный сервис, который с какой-то периодичностью будет собирать данные.
Вообще красиво - когда сторонник сервис тебе на вебхук все обновления пиздолит.
464 2208753
>>08751
используются, но разговор то был что де нода прям ебет любую задачу аж шуба заворачивается
465 2208800
Есть ли смысл такой юнит тест писать ради заголовка или это слишком мелко?
image.png136 Кб, 754x145
466 2208802
467 2208837
Есть среди Анонов вкатунов желающие поверстать за деньги?
468 2208842
>>08837
Да мне жс и вся хуйня проще даётся чем эти ваши цсс.
вкатун
469 2208843
>>08837
Я хочу
470 2208882
>>08802
>>08800
Есть. Тащемта все тесты и должны быть подобного вида
471 2208909
>>08882
Нэт. Самые бесполезные это как раз happy path тесты, потому что ломают чаще граничные случаи. А 2 + 2 = 4 никто не сломает, особенно если архитектура нормальная не хрупкая и у тебя 2 + 2 = 4 не случайно получилось и ты на этом довольный остановился, а твердо и четко 2 + 2 = 4.
472 2208911
>>08909
Так есть ли смысл или нет в итоге?
473 2208919
>>08745
Пчел, в подобных задачах требующих жесткого риалтайма в принципе ничего кроме С++ и хитрожопых удаленных параллельных вычислений не придумать. Никаких блять жав/хуяв/шарпов тут не засунуть

Все остальные задачи изи тянутся Нодой, которая имеет дохуя либ, легко поддерживаема и ебет по производительности львиную долю маняязыков
474 2208924
>>08909
Ну так а вдруг какой-нибудь вкатун переделает компонент? Или потом реакт каким-то хуем обновится таким образом, что это название пропса станет зарезервированным под какое-нибудь действие внутри реакта?
475 2208952
>>08919

>маняязыков


а че у нас самое популярное для больших проектов, спринговая жаба да сисярп, это они то маняязыки, да в них десять раз меньше дырок чем в ноде, но они дороже в разработке.
всякая эзотерика юзается в фаангах, но там они знают зачем ее используют, да редкими энтузиастами, пушто кто его потом поддерживать будет.
ты пойми василий, я не против ноды, на ней замечательно гавнякаются небольшие и средние проекты, как и на рубях, как и на пыхе, когда в хуй не уперлось разворачивать монструозные спринги с дотнетами, но если что то крупное, что потом надо будет масштабировать и поддерживать я ноду не возьму, оно потом в поддержке это латание дырок выйдет дороже, всплывут вопросы перформанса, безопасности, большой кодовой базы, сложность тестирования, оно того не стоит.
476 2208968
>>08952
Дырка у тебя в жопе
А в ноде это фича
477 2208970
>>08968
не баг, а фича ага
Стикер255 Кб, 335x512
478 2208995
>>08952

>всякая эзотерика юзается в фаангах, но там они знают зачем ее используют

479 2208999
>>08995
если у тебя есть специалисты, то че бы не использовать, если кабаны не могут себе позволить держать редких погромистов не значит что языки плохие
480 2209078
>>08843
Пиши то или фейк почту.
481 2209080
>>09078

>то


тг.
482 2209083
>>09078
qwerqw,&.er2chANUSyandO|gexPUNCTUMre3su
483 2209128
>>09083
Написал.
code.png109 Кб, 1300x746
484 2209213
Ну, так было у меня
485 2209214
>>09213
Как я вообще в этот тред запостил?
486 2209317
>>08800
>>08802
Не забудь тест на каждый геттер/сеттер написать.
Такую хуитку имеет смысл писать, если тебе нужно что-то трансформировать и собрать результат обратно в оригинальное значение. Самый очевидный пример - шифрование.
В остальных случаях просто тратишь время впустую, попутно добавляя оверхеда к разработке.
487 2209401
>>08675
Спасибо в следующий раз так сделаю, а сейчас уже создал NPM пакет.
estas-ganando-papa-are-you-winning-dad-padre-coraline015958[...].jpg220 Кб, 1080x1216
488 2209480
489 2209512
Вкатываюсь в ноду, поделал круды, основные концепции вроде бы более-менее понял. Сейчаc придумал идею для небольшого пет-проекта по типу интернет-магазина.

У пользователей есть три уровня доступа
1) Покупатель
2) Продавец
3) Админ

Покупатель может

Регистрироваться, менять настройки профиля, восстанавливать пароль через смски, просматривать список товаров, добавлять в закладки товары, пополнять кошелек (простенькую систему фейковых платежей думаю через еще один сервак запилить) делать покупки, переписываться в чате с продавцом

Продавец может

Офорлять заявки на поставку товаров на склад (вручную или csv), на рекламные акции и программы лояльности, отвечать покупателям в чате и блокировать им доступ к своим товарам.

Админ

Управляет заявками от продавца, может смотреть статистику по пользователям и различным категориям товаров

Что еще можно добавить к этой постановке, чтобы в процессе реализации охватить все основные особенности ноды?
490 2209553
>>09512

>Покупатель может


Дохуя смешанной логики напихано, заебёшься потом реализовывать. Это как минимум 3 уровня - Посетитель (нету прямой привязки к бд), Пользователь (привязка к бд в виде аккаунта) и Покупатель (совершил как минимум одну покупку, необязательно успешную).

>Продавец может


Если будут чаты, то тут нужна прослойка из модераторов. Продавец должен своё говно толкать Покупателям, а не чистить чаты вилкой и блокировать пользователей. Максимум он может репорт кинуть на токсичного пользователя, а там уже модер решит. А если не решит, то порешает админ.

>Админ


Типичный и швец, и жнец, и на дуде игрец. Тут нужна прослойка из какого-нибудь бизнес-анал итика, который разбирается в товарах и прочей юридической лабуде, но необязательно в технической части сайта. Поначалу конечно админ будет и анал итиком, но в определённый момент количество барыг будет расти быстрее, чем админ сможет их перебрать. Так что разделение между ковырятелем нжинкса и серверов и перебирателем макулатуры очень поможет при расширении.

И естественно вся эта система должна быть реализована на уровне скоупов, то есть одна абстрактная сущность можеть обладать неколькими ролями. Ты же пишешь на смузи-стэке, так что там будет сорт OAuth'а, который оперирует на скоупах.
491 2209554
Как мне создать конструктор html страниц? хочу упростить работу дизайнерам в создании страниц для электронных писем.
492 2209555
>>09554
знаю react.js
493 2209560
>>09554

>упростить работу


>страниц для электронных писем


Выбери одно.
494 2209575
>>09560
в общем идея ясна, нужен конструктор страниц
495 2209578
>>09554
WYSAWYG редактор это не хухры мухры, на всяких тильдах делают кучу сайтов и такие проекты реальное бабло зарабатывают.
2021-06-0920-29-17-4670028874c34a32b7cda09a82b73460.png48 Кб, 761x354
496 2209581
Подскажите как пилить CSS анимацию для реакта? Нормальная практики использовать аттрибут key для перерендера компонента , чтобы опять проигралась анимация? Во vue.js так норм.
hyper turn head.jpg28 Кб, 720x720
497 2209662
>>09581
Ебать, гениально кстати

Я обычно делаю примерно вот так. Надо попробовать твой способ

[animationState, setAnimationState] = useState({
stage: 'animateThis' | 'animateThat' | null
})

<div

className={`${styles.animatable} ${
stageToAnimationClassName(animationState)
}`}

onClick={() => setAnimationState(something)}
/>

function stageToAnimationClassName() {
switch case huemoe return cssclassname
}
498 2209666
>>09662
Ну и в useEffect'е по таймеру убираешь animationState.stage, ну ты понял
image.png38 Кб, 465x366
499 2209714
Сап, аноны, сейчас смотрю видео по джаваскрипту для вкатывания (https://www.youtube.com/watch?v=Bluxbh9CaQ0&t=4950s&ab_channel=ВладиленМинин) и уже больше 2 часов просмотрено, а он ни разу еще не показал как это работает на практике, выводит все данные в консоль и поясняет за основы.

Есть ли настолько же подробные видосы, но с кучей практических примеров, чтобы сделать что-то и сразу видеть как это будет работать на странице? Мне ведь писать простой калькулятор скоро, а я умею только вот такую хуйню выводить на страницу
500 2209717
>>09714
Минин очень плох с точки зрения академики.
Канал ниже тоже не академический идеал, но намного лучше имхо
Попробуй, мб зайдёт
https://youtube.com/c/itgid
501 2209719
>>09714
учи кантора как отче наш, лучше пока ниче нет
502 2209733
>>09666
Да знаю я, добавь таймер, убери таймер, пиздец охуеваю после vue.js Способ рабочий и в реакте и во вью, просто интересуют подводные камни вдруг в реакте хуяня какая всплывает.
503 2209735
>>09733
>>09666
Вроде один минус есть, с key компонент полностью перерисовывается, а с таймером нет. Если компонент шибко большой, то могут быть проблемы с производительностью.
504 2209756
>>09662

>[animationState, setAnimationState] = useState({


>stage: 'animateThis' | 'animateThat' | null


>})


Блядь. Анимации (уровень презентейшена) в стейт запихивать, вы ебанулись уже со своими редаксами окончательно или мне кажется?
Мимо не реактер
505 2209787
>>09554
Тащемта если ты вкатун (а судя по таким вопросам ты как раз он и есть), то ты нихуя не сделаешь.
506 2209789
>>09662

>строка | строка | null


Вкатун, плиз. Для реализации отсутствия инициализации у переменной примитива нельзя использовать объекты. используй undefined или пустую строку
507 2209791
>>09735

>Если компонент шибко большой, то могут быть проблемы с производительностью.


Реактопетухи вновь пососали у вьюгигачедов и свелте-богов. Когда это уже кончится?
508 2209793
>>09714

>с кучей практических примеров, чтобы сделать что-то и сразу видеть как это будет работать на странице?


Зайди на codepen, там дохуя подобных шаблоньчиков и сразу потыкать можно.
509 2209795
>>09756
Ну тащемта в этих реактах не завезли нормальной поддержки анимаций. Во вью есть, но там тоже все через бойлерплейт в виде отдельного компонента с применением жс.
510 2209796
>>09317
А на что нужно тогда писать
512 2209799
>>09795
Где тут бойлерплейт? Все в один компонент заворачивается, ни строчки js кода <transition name="bounce"> <p v-if="show">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris facilisis enim libero, at lacinia diam fermentum id. Pellentesque habitant morbi tristique senectus et netus.</p> </transition>
513 2209802
>>09791
Да на vue если key поменять тоже будет принудительно перерендера, но во vue хотябы есть поддержка анимаций и этот хак можно не использовать.
514 2209804
>>09793
Премного благодарю, анонче
515 2209807
>>09799

>Где тут бойлерплейт?


>name="bounce"

516 2209817
>>09799

>Где тут бойлерплейт?


А ты сиэсэс забыл приложить.
517 2209824
>>09817
В реакте точно такой же css, к тому же есть css библиотеки анимаций. 847512
518 2209826
>>09796
Не на что, продолжай проверять, что аргумент таки передался в функцию.
519 2209831
>>09789
Ты обосрался, null это примитив
520 2209835
https://docs.google.com/document/d/1Y5N5lUI0ljszcMu-lMHCGC-0pq_Gf2k_9NiT8_bRsjE/edit# не слишком ли жесткое тестовое для джунчика? Я вот растерялся, стоит ли тратить время, анон?
image.png21 Кб, 1359x614
521 2209836
аноны, как сделать так, чтобы блоки были постоянно снизу, но еслди в них добавлять контент они расли вверх и если они занимают весь экран, то прокрутка вверх прождолжалась бы, а низ блоков уходил бы вниз?
522 2209839
>>09835
Пчел, там нет ограничений по используемым либам, поэтому изи.
Было бы ограничение - ябы сразу нахуй слал таких кабаньчиков.
523 2209842
>>09836
Литералли гуглиться за пару секунд.
https://codesandbox.io/s/ecstatic-bassi-vlou1?file=/src/styles.css
16006407680350.jpg59 Кб, 512x512
525 2209845
>>09842
Благодарю, я наверное не те запросы забивал, мне такое не выдает
526 2209849
>>09844
ООО, да, охуенно, Спасибо!!!
528 2209899
>>09756
И что такого?
Весь фронт это вообще одно большое представление
Стейт - это же СОСТОЯНИЕ нашего фронтенд-приложения
И вот мы хотим, чтобы после нажатия кнопки пару секунд она была в состоянии (СТЕЙТЕ) анимации
16347432116620.jpg32 Кб, 900x900
529 2209915
Новичку, Минин или Хауди?
530 2209922
>>09915
Кантор.
531 2209934
532 2209990
>>09915
Оба. Еще курсы от инстаблогеров нужно штук 10.
533 2210041
Как в тайпскрипте сделать массив определенного типа определенной длины? Я только Tuple нашел, но там нужно каждый элемент описывать, а у меня они все одного типа и их много.
534 2210048
>>09915
В рот или в жопу?
image.png38 Кб, 1359x617
535 2210051
Как вам идея? В первом блоке будут добавляться счетчики и они станут появляться в третьем, он соответственно будет расти вверх по наполнению и образовывать небоскреб
536 2210086
>>10041
ТупеСкрипт: чтобы создавать проблемы на ровном месте из ничего
537 2210091
ПЕРЕКАТ >>2210088 (OP)
ПЕРЕКАТ >>2210088 (OP)
ПЕРЕКАТ >>2210088 (OP)
538 2210128
>>09899
Ясно, реактеры настолько обезумели, что уже не видят, где представление с моделью смешивается.
Тред утонул или удален.
Это копия, сохраненная 14 июня 2022 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски