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

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

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

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

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

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

Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
2 2392290
Посоны, поясните по хардкору, 145к (с премиями 160-170, но их на 3-4 месяца обычно задерживают) это совсем дно для 2 лет опыта? Удаленка, по срокам никто не дергает, коллектив довольно хороший, но вот зп несколько беспокоит.
3 2392291
>>392290
Это повидл до спецолимпиады, 1.5 года. Для двух без премии маловато.
4 2392292
>>2392203 →

>И у каждой интересоваться "как дела"?



в моём примере была одна асинхронная задача, конечно их может быть больше

>Но не интересуется у самой задачи о ходе её выполнения



ага а где я писал, что интересуются у самой задачи, что за бред?

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



он проверяет есть ли задачи в очереди и нет ли задач в call stack, тогда добавляет их туда из очереди

>Но они выполняются синхронно. И их не называют "асинхронные задачи" (от этого только путаница в головах, как мы видим на твоём примере про бредовой фразе "интересоваться, завершилась ли асинхронная задача"), их называют микро-/макротасками, а выполняются они все синхронно.



не согласен, асинхронные таски выполняются асинхронно от общего потока, потому что после колстека (в него попадёт например setTimeout либо fetch-запрос) они уходят выполняться на браузер апи и уже потом от апишек приходят соответствующие функции-обработчики (таски) в очереди, потом они отправляются в колстек, если он пустой. насчёт микро/макро хз, вроде они так называются да. функции-обработчики синхронные
5 2392343
>>392292

> ага а где я писал, что интересуются у самой задачи, что за бред?


Была фраза "интересоваться, завершилась ли асинхронная задача". Даже если и не "у самой задачи", то всё равно ты говорил про "интересоваться о ходе выполнения", в этом главная проблема. Движок не интересуется о ходе выполнения, он просто выполняет.

> не согласен, асинхронные таски выполняются асинхронно от общего потока,


К тому моменту основной поток уже завершился, его нет. С точки зрения движка, основной поток — такая же таска, как и остальные в очереди. Он выполняется синхронно, до конца, потом следующая задача выполняется точно так же синхронно, просто после него.

Асинхронность — это о том, как они добавляются в очередь. А выполняются они все синхронно.

> функции-обработчики синхронные


Это, по сути, и есть таски. Выполняются синхронно, по очереди.
6 2392465
На некоторых сайтах при нажатии или наведении на элемент выполняется какой-нибудь скрипт, но как это работает, если в коде страницы нет эвента для элемента? Как это без эвентов работает?
7 2392480
>>392465
Event delegation
8 2392502
>>392245 (OP)
Анончик, насколько хуевая затея для вкатуна немного надрочившись с css юзать какой-нибудь tailwind для своих пет-проектов, если сильно впадлу верстать на голом css?
Насколько вообще это гиблое дело чуть сразу научившись центрить див браться учить подобные инструменты?
9 2392504
>>392502
Так его как раз для вкатунов-неосиляторов и сделали, так что всё норм.
10 2392511
>>392504
Просто хочу сосредоточиться на ебле с жсом, а не на ебле с версткой под каждое устройство, но, видать, слишком много хочу.
В любом случае, добра, анон.
The next-gen web framework.png67 Кб, 656x503
11 2392599
Там новый фреймворк завезли:
https://fresh.deno.dev
12 2392609
>>392599
Напомните, сколько понадобилось лет, чтобы снова вернуться к раздаче статики?
13 2392639
>>392599
Круто, перезвони, когда хоть кто-нибудь это в продакшене запустит.
14 2392643
>>392599
Учим еще и это теперь?
15 2392703
>>392465
надо не просто код страницы смотреть, а текущий код DOM, ибо всякий говняк может динамически подгружаться.
то есть юзай Ctrl+Shift+I вместо Ctrl+U
17 2392718
Коллеги, нужен совет.
Вчера в очередной (третий) раз уволился с работы, в связи с чем стал актуальным вопрос — как с пользой для карьеры провести ближайшие пару-тройку месяцев.

Неиронично хочу претендовать на ЗП в 300к, а с текущими знаниями/опытом совесть не позволяет такие деньги просить.
К слову об опыте, всю дорогу был рядовым разрабом, клепал тасочки из джиры. Хочется архитектурные скиллы подтянуть, чтобы из мешанины реакта/редакса/аксиос/юи-библиотек делать жизнеспособные большие приложения.
Так же интересует тема с криптой/блокчейнами/дефи — сложилось впечатление, что там можно серьезные суммы рубить.
Ну и в контексте политической обстановки, может вообще стоит искать релокейт, хотя этот вариант мне не очень нравится, но будущее айти (да и в целом) неоднозначно.

TL;DR:
- какие (и где) скиллы в целом и по архитектуре в частности, в контексте реакт разработки подтянуть
- стоит ли разбираться с блокчейнами, смартконтрактами. Какие перспективы для фронт-разраба в этом поле
- стоит ли искать релокейт
18 2392772
>>392718
Конечно пиздуй в скрипту, там деньги раздают.
19 2392958
Я вкатусик-мошенник, сделал цап-царап торрента штмл академии базовый интенсив по жамаскрипту. Там они начали с темы Canvas, дали задание нарисовать облачка и график очков в виде столбцов. Затем Canvas забросили и в конце показали анимацию снег и анимацию дождя из огурцов.

Объясните, пожалуйста, я так нихуя и не понял, вот что ждун жабаскриптер что должен уметь по части Canvas, чтоб найти работу?
20 2392986
>>392958

>что ждун жабаскриптер что должен уметь по части Canvas


Должен уметь создать собственный 3d графический движок
21 2393012
>>392599
Ну и чем это отличается от некста? Кроме того, что дено никто в проде нормально еще не запускал, в отличии от ноды.
22 2393043
>>392958
ну хотя бы свой пеинт сделай веб версию
23 2393247
Часто вижу, что электрон все хают. Какие тогда вообще альтернативы для js на десктопе есть?
24 2393271
>>393247
Никаких, хают его поехавшие пердолики. Электрон обычно выбирают, когда выбор стоит между десктопным приложением или его отсутствием.
В плане архитектуры у него очевидный косяк в том, что ты запускаешь среду, предназначенную быть огороженной от файловой системы для запуска сторонних скриптов, без этого огорождения, со всеми вытекающими последствиями. И костылить эти вытекания будешь ты.
В плане разработ очки там кромешный пиздец из зависимостей, легко конкурирующий с CRA. Но как я говорил выше, выбора нет и существующий пиздец никак не сравнится с одновременной поддержкой кодовой базы веб-версии и какого-нибудь говнеца, слепленного на Qt.
25 2393294
>>393271
А что скажешь за альтенативы из жиэс-списка тут?
https://github.com/sudhakar3697/electron-alternatives
26 2393350
>>392958

> базовый интенсив по жамаскрипту. Там они начали с темы Canvas


Базовый — т. е. с нуля? И они сразу на канвас перескочили? Хоть объяснили, что такое функции, как их вызывать, что такое объекты, как обращаться к свойствам и методам? А то без этого рисовать проблематично.
27 2393442
Как браузер считает width auto? Я убираю, ставлю 100% и элемент становится шире. в инете пишут, что связано с padding и margin, нет не связано. У него родитель с display: flex и position: relative
28 2393452
>>393442
Ты не сказал, какой flex-direction у родителя, так как при строчном ширина должна решаться через flex-shrink, flex-grow, flex-basis.
29 2393501
>>393452
У родителя родителя flex-direction: column.
Вот кароче ссылка на сам элемент: https://mui.com/material-ui/react-app-bar/#app-bar-with-a-primary-search-field
Я говорю про Search width
30 2393535
>>393501
И там ещё есть пустой бокс, какое у него назначение?
31 2393674
Как у тайпскрипта с офф документацией? Стоит ли по ней изучать TS?
32 2393679
>>393674
Нет. Дока тайпскрипта перечисляет все фичи, которая имеет, большая часть которых будет непонятна вкатуну.
33 2393682
>>393679
Ну я не прям вкатун, уже год во фронте работаю. ПРосто с реактом и JS.
34 2393690
>>393682
Ну значит мигрировывай существующую кодовую базу на тайпскрипт. Понимание фич имеет каскадные требования, например дженерики будут казаться перегруженным говном до тех пор, пока достаточно не наебёшься с организацией типов и интерфейсов без них. И так для большинства продвинутых фич.
35 2393829
Есть массив типа класс A, array: Array<A> = [];
Почему я могу кинуть в него a[0] = new class B() и тсу похуй ?
36 2393838
>>393829
В чем собственно проблема?
38 2393905
aria-label переводить на русский?
39 2393920
Аноны, есть какие-нибудь хорошие видосы про fetch на js и про routers?
image.png170 Кб, 580x450
40 2393921
>>393846
>>393838

>В чем собственно проблема?


забыл что в жс классов нет
41 2393927
Тайпскрипт защищает от ошибок типизации, говорили они
в рантайме ничего не будет крашиться, говорили они
42 2393943
>>393927
Ты неправильно типизируешь, типизируй правильно
кишочки.jpg14 Кб, 800x111
43 2393955
>>393943
Дьявол в кишочках
44 2393961
Мог бы провалидировать хотя бы мой вызов store.dispatch(). Что ему мешало не понятно. Похуй, пляшем
45 2393967
>>393961
мб редакс виноват?
46 2393973
>>393967
Походу да, какой-то мутный у него тип для dispatch

dispatch: ExtractDispatchExtensions<M> & Dispatch<A>

может из-за мидлвар такая хрень
47 2393975
50к в месяц для фронта с годом опыта это мало?
Знакомый с другой компании говорит что пздц мало, но я что-то ссу больше попросить
48 2393983
>>393961
По феласофии ты можешь диспатчить любые экшоны (AnyAction), даже те, которые никто не слушает. Задачка редюсера - чекнуть тип и брать пэйлоад правильно, а не неправильно
Поэтому <LocalAction> в configureStore - это неверно
burroughs.died.jpg70 Кб, 1080x806
49 2393986
>>393983
Ну пока что реально

> Ты неправильно типизируешь, типизируй правильно



Сейчас затипизировал поправильнее, но с мидлварами всё равно какая-то хрень
50 2393992
>>393986
В чем космический смысл этих ментальных упражнений?
createSlice или createReducer и createAction помогают со всем этим
51 2393993
>>393975
Я без опыта костыливание на вордепрессе + jquery не идет в счет устроился реакт макакой за 100к/месяц год назад.
burroughs.died.jpg91 Кб, 1467x795
52 2394002
>>393992
Тупескрипт челленж, мэээн
53 2394012
>>394002
Указать типы у вызова функции это не челлендж, лол
Челлендж - написать так, чтобы типы указывать не надо было
54 2394019
>>394012
TS птица гордая, не пнешь - не полетит. Не раз замечал за ним такое. Выводит типы неплохо, но пнуть все-таки иногда надо
1656717763650.jpg75 Кб, 981x758
55 2394095
>>393690

> Ну значит мигрировывай

56 2394137
Собираюсь делать игру на канвасе
1656746573699.jpeg88 Кб, 1280x730
57 2394140
Сап!

Я двигаюсь по гайдбуку из шапки php треда. В данный момент делаю финальную задачку про сайт для создания и прохождения тестов и понимаю, что упираюсь в js и ajax-запросы.

Так как гайдбук относительно старый, то использовать для решения задач предлагается jQuery.
Я правильно понимаю, что jQuery сейчас нигде не использует и стоит сразу переходить к изучению фреймоворков?
Я успею освоить за пару дней какой-нибудь реакт в степени достаточной для решения простых задач ?
58 2394152
>>394140
ну аджакс через fetch можешь сделать, фреймворки не нужны
image.png26 Кб, 1357x86
59 2394153
60 2394156
>>394153
Тут про написание воркбенча для опросников. Пока о таком даже не думаю, но возможно попытаюсь.
От js мне банально нужна возможность обновления контента на странице без релоада и прочие мелочи.
1656750222863.mp41,5 Мб, mp4,
640x480, 0:16
61 2394163
>>394152
Спасибо! Вроде бы это то, что нужно
62 2394175
>>394156
fetch XMLHttpRequest но cursed
63 2394176
>>394175
А как пхп примет запрос?
64 2394181
>>394176
так ему придёт обычный запрос вроде
мимо
65 2394182
>>394181
POST умеет принимать json от пхп?
66 2394198
>>394182
умеет, но я не понял какой пост?
67 2394828
>>394176
зависит от твоих потребностей, php его примет или в $_POST, и тогда ничего не нужно парсить, или в php://input - тогда прийдется парсить, но опять же - зависит от того, в каком формате ты собираешься отправлять запрос. Если formdata - $_POST, если json - php://input

https://stackoverflow.com/questions/8893574/php-php-input-vs-post
68 2394864
>>392245 (OP)
Помогите выбрать ORM (js) для PostgreSQL для старого проекта

Нужно хранить Объект в базе со вложенными полями. Большой йоба-объект, там вложенность 3-4го уровня будет и куча полей. Описывать всё это ручкам - ебанись, количество ошибок будет возрастать при каждом изменения поля. Меньше кода - лучше.

Поэтому, нужны миграция. Вот я описал схему в JS, и база данных должна попукивать в ответ, делая ALTER, ещё и безопасная проверка данных автоматически будет.
И если это объект с вложенными полями, значит там будут JOIN в большом количестве, которые явно не хочется руками писать на каждый CRUD. Хочется простого интерфейса уровня object.create(JSON), object.update(JSON), object.remove(id) и тд и тп. Отправляю на либу JSON, а либа всё по sql-табличкам сохраняет консистентно.
А также, в таблице SQL уже есть классическая "плоская" таблица, к которой бы надо привязать отношения по ключу.. Хотелось бы такой миграции, чтобы старые таблицы не разъебало, а добавлялись новые

Какой ORM мне больше всего подойдёт?
69 2394869
>>394864
Prisma
70 2394902
>>394864
Енджой ёр n + 1.
71 2394915
>>394902
Что значит n+1?
image.png20 Кб, 884x69
72 2394921
73 2394922
гайз а картинки импортить нужно по одной или как-то в цикле можно?
74 2394926
>>394922
Какие картинки? Откуда? Что значит импортить?
75 2394928
>>394921
Лучше N+1 в производительности, чем пердолиться с тысячами и тысячами строк кода
76 2394932
>>394928
Ну да лучше всю инфраструктуру насиловать, лишь бы строчки не писать.
Нахуй ты тогда мигрируешь на постгрес? С говноорм производительность у него будет не лучше условной монги, а может даже и хуже.
77 2394936
>>394926
ну когда работаешь с реактом, то импортишь картинки как модули и потом вставляешь через переменную в имг срс
78 2394945
>>394936
Во-первых это фича вебпака.
Во-вторых - нет, так как статический импорт в лупе - нонсенс.
У вебпака есть костыль, который в реквайр может целую папку запихнуть, но там уже сам будешь это говно разматывать в коде.
Менее костыльный способ - написать скрипт, который будет собирать все файлы в условной папке и создавать для них импорты в отдельном модуле. Там же можно их в коллекцию для итерации запихнуть.
79 2394946
Экспресс жс вышел из состояния зомби,аж версию 18.1 выкатили
80 2394952
>>394946
Это грибы?
81 2394953
>>394952
Нет,это жаваскрипт
82 2394955
>>394946
Кто-то этим гавном ещё пользуется? Серьёзно?
83 2394958
>>394953
Видимо это жс под грибами Нода 18.1, она постоянно обновляется, причем тут express
84 2394959
>>394955
90% статей и учебных примеров с использованием его
85 2394961
>>394959
Ну вот учиться то ещё можно, но в реальные проекты тащить запрещено. Те, которые начались после 2020го, когда появился TS
86 2394962
>>394958
Нода 18.4 уже.
Ну можно на голом жс под ноду писать лол
87 2394963
>>394961
А что надо,фастифай?
88 2394969
>>394963
Хотя бы fastify. если с типами, то nest.js
А большего ничего и нет для бекенда
89 2394974
>>394962
Ну и хде экспресс 18, грибоед? https://github.com/expressjs/express/tags 5 еще в альфе
90 2394975
>>394955
Для обработки json на сервере хватит
91 2394979
>>394975
Для обработки json достаточно голой ноды без подводных камней
92 2394980
>>394979
Но это чуть сложней
93 2394995
как ахуенно прописать стили для ширины и высоты картинок?
94 2395036
>>394995
height и width атрибуты
95 2395095
>>395086 (Del)
реакт натив?
96 2395098
>>395086 (Del)
На какие телефоны? Это тебе не ПК, где можно написать приложение для одной ОС и портировать на другую, на телефонах анальный вендорлок.
97 2395106
>>395086 (Del)

>на каком жс-фреймворке можно писать андройд-приложения


>что не SPA/веб


У меня для тебя плохие новости, Нэйтив под андроид, но он вроде как спа.
98 2395130
>>395112 (Del)
rn не спа
99 2395718
>>395112 (Del)

>ведройд


Тайланд, войн, выйграли?
100 2395739
>>393993
Каким образом? Что спрашивали?
101 2395780
>>394952

> Это грибы?


Чо за грибы?
102 2395809
если мне нужны 2 одинаковых гет запроса, но в одном есть параметры, мне лучше делать это одним запросом или двумя?
И как лучше запилить? Я сделал как опциональные параметры, но как-то не очень наверно объект с undefined передавать

export const getEvents = (params?: IGetEventsParams) => {
return http.get('events', { params });
};
изображение.png11 Кб, 307x272
103 2395829
как можно получить цвет пикселя у элемента div? на пике я вожу курсором по вертикальному градиенту, получаю координаты относительно этого элемента и хочу по ним получить цвет. сам градиент в css задан как background.

я мог бы это сделать с помощью canvas, но тогда я все равно не смогу потом получать цвет на квадратном градиенте слева, потому что он представляет из себя 3 diva, вложенных друг в друга. самый первый слой d1 это просто однородный фон, d2 горизонтальный белый->прозрачный градиент, d3 вертикальный черный->прозрачный градиент.

такой подход позволяет достаточно быстро отрисовывать градиент путем изменения только цвета фона дива d1. с тем же canvasом у меня фризила отрисовка градиента.

вот тут https://cssgradient.io/ сделано по такому же принципу, через 3 слоя дива, но как получать в таком случае цвет пихеля я хз
104 2395831
>>395739

>Каким образом?


Попросился на собес у себя в компании написав руклю

>Что спрашивали?


Как отцентровать div без гридов и флексов, отличие let от var, че за useEffect ну и подобные простые вопросы.
105 2395833
>>395809

>export const getEvents = (params: IGetEventsParams = {})

106 2395835
>>395829
html2canvas
107 2395837
>>395829

>вот тут https://cssgradient.io/ сделано по такому же принципу


Хуйню несешь. Там берутся координаты указателя и в зависимости от этих координат высчитывается цвет.
108 2395841
>>395837
какую хуйню я несу? ф12 нажми, там 3 дива, у одного из них просто меняется цвет фона в зависимости от выбранного цвета. а то что потом через координаты можно получить итоговый цвет, зная цвет на этом ползунке, это и так понятно. не понятно как получить цвет на этом ползунке. а ползунок все тот же див с нарисованным через css градиентом
109 2395845
>>395835
это не может быть быстро никак. даже пробовать не буду
110 2395859
>>395833
класс, спасибо!
111 2395887
На жс игре можно заработать?
112 2395896
>>395809
Чё ты вообще несешь? Гет запросы с разными параметрами - разные запросы.
113 2395903
>>395887
Нет, но на игрунах - да. Делаешь просто казино на биткоинах.
114 2395912
>>395903
ну казино это зашквар
115 2395920
>>395903
таак а это уже интересно звучит, у меня прям хуй встал
116 2395970
Какая в приложении должна быть структура? Я для пета собираюсь как в редаксе тулките сделать src/app и src/features, это норм?
117 2395973
>>395970
Просто в рут кидаешь все скрипты. Идеальная хэш-таблица и всякие альясы и резолверы не нужно настраивать.
image.png104 Кб, 300x301
118 2395991
>>395973
а как потом ориентироваться в коде?
119 2395997
>>395970
Создаешь две папки с именами "bolshoy_yoba" и "maly_yoba". В первую кидаешь все большие файлы (> 1000 строк), в первую - все маленькие. Так очень удобно оценивать качество кода: если в первой папке файлов больше чем во второй, значит код говно.
120 2396011
>>395896
Ну у меня это один запрос, просто а одном случае params передаются а во втором нет
121 2396090
Я прыгнул выше головы. Начал делать проект, который чисто объективно мне пока не по зубам. Второй месяц ебусь с ним. Да, это пиздец прокачивает, но с каждой хуйней сил все меньше. Сегодня вот ни с хуя слетел корс. И мне даже не хочется разбираться почему.
Это все выглядело как средний пет, но разрослось в пиздец. Я даже, бывает, начинаю путаться в папках и файлах, где какой кусок кода. По ощущениям сделано процентов 60. Код превращается в лапшу, чувствую что пишу хуйню. Пытаюсь сделать одну фичу, понимаю, что она тянет за собой 10 других, которые я не знаю как делать. Очень много затупов даже не в плане "как писать код", а в плане "как это лучше организовать", потому что я не знаю блять, у меня нет опыта, я понятия не имею как это делается в серьезных проектах.
Хочется дропнуть нахуй и заняться чем попроще, а потом вернуться и все доделать. Что скажете?
122 2396097
>>396090

>заняться чем попроще


no pain == no gain
123 2396113
>>396090
посмотри какие-нибудь видео с лайв кодингом и внедряй оттуда фичи
124 2396136
>>395831
рукля?
Ну ты по блату считай прошел
125 2396179
>>396136

>по блату


Скорее, зарекомендовал себя. Ну и блатом я бы это не назвал, все равно я уже на протяжении нескольких лет плотно задрачивал JS и TS, значительно продвинулся вперед джунского уровня.
126 2396234
при нажатии н кнопку проигрывается звук, как сделать задержку, чтобы звук полностью успел проиграться до следующего нажатия?
127 2396235
>>396179
Зарекомендовал себя без опыта работы? Охуенные истории.
128 2396236
>>396179
Понял,анон
Спасибо,и удачи тебе
129 2396237
>>396234
Поставить дебаунс до конца проигрывания звука.
130 2396248
>>396136

>рукля


Руководителю. Это как писать "ф-цию"
131 2396266
>>396235
Чел, я работал все это время, но не должности разраба, периодически контактировал в связи со своими должностными обязанностями с командой разрабов, вот так и получилось.
132 2396271
>>396266
То есть по блату.
133 2396273
>>396271
Нет, не по блату. Блат - действие, ущемляющее интеерсы третьих лиц. Кого я ущемил, если я не говнокодю и вполне успешно выполняю таски из жиры? Или ты действительно думаешь, что намного лучше взять разраба-мимокрока чем разраба, который прекрасно знает в чем специфика проекта и прекрасно знаком с корпоративной культурой именно этой конторы?
134 2396279
>>396273
Да это душнила же ебаный, особенно учитывая, что никогда в айти нетворкинг не считался зазорным.
135 2396287
>>396273

>Блат - действие, ущемляющее интеерсы третьих лиц.


Хуя манямирок. Блат - это когда ты без опыта на 100к попадаешь потому что ошивался возле команды разрабов. Возвращайся, когда пройдёшь собес на вакансию, выложенную в hh, со своим пук-среньк без опыта но учил ts. Ну или по крайней мере не манямиркуй здесь, а где-нибудь в /b/ или /wrk/.

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


Так это каноничный блат. Тут подскочил, здесь подлизался, а там и в дамки.
136 2396295
кумовство получается
137 2396306
>>396090
А на чем пишешь?
138 2396307
>>396295
рад за тебя, хорошо когда получается...
139 2396314
>>396307
получается хорошо что хорошо получается получается то хорошо а когда не получается то плохо
140 2396319
>>396287

>Возвращайся, когда пройдёшь собес на вакансию, выложенную в hh, со своим пук-среньк без опыта но учил ts


Разве не так вкатываются?
141 2396322
>>396097
Анаболики.
142 2396421
>>396287

>Блат - это когда


>Блат - (по Фасмеру - от идиш blat — «посвященный, согласный»; или польск. (воровск.) blat - «взятка», в свою очередь от нем. die Blatt - «бумажн. деньги»[1]) — жаргонное слово, широко распространённое на территории бывшего СССР, означающее знакомство или связи, используемые в личных целях и ущемляющие интересы третьих лиц.


Еще раз. Чьи интересы я ущемил? Вкатун с двачей, которое не имеют понятия о корп культуре, но явно являются лучшим кандидатом, да?

>без опыта


Т.е. 2 года опыта верстания шаблонов на вордпрессе, параллельного самообучения, 5 лет работы в <компаниянейм>, из которых несколько лет непосредственного изменения бизнес процессами не являются опытом?

> на 100к


Дефолтная зарплата в МСК. Мог бы даже больше попросить.

>Возвращайся, когда пройдёшь собес на вакансию, выложенную в hh, со своим пук-среньк без опыта но учил ts


Проходил, и на миддла и на миддла+. Разрешаешь вернутся?

>Так это каноничный блат.


Т.е. то, что во всех более-менее конторах вакансии размещаются в первую очередь для сотрудников данных контор, а потом уже попадают на HH это блат, да?
143 2396435
>>396421

>Еще раз. Чьи интересы я ущемил? Вкатун с двачей, которое не имеют понятия о корп культуре, но явно являются лучшим кандидатом, да?


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

>Т.е. 2 года опыта верстания шаблонов на вордпрессе, параллельного самообучения, 5 лет работы в <компаниянейм>, из которых несколько лет непосредственного изменения бизнес процессами не являются опытом?


Ты же тут >>>2393993 распинался, что вообще безопытный макакен, а теперь внезапно оказалось, что аж целых 7 лет опыта. Зато понятно, что пиздобольство является частью корпоративной культуры в вашей фирме, что ты аж на анонимном форуме не можешь не пиздеть.

>Т.е. то, что во всех более-менее конторах вакансии размещаются в первую очередь для сотрудников данных контор, а потом уже попадают на HH это блат, да?


Не поверишь...
144 2396439
>>396435

> вот только воздержись от советов по трудоустройству


Ладно, не буду советовать обзаводится связями, твоя правда.

>распинался, что вообще безопытный макакен


Где я распинался? Я вообще не писал там ни про опыт разработки, ни про опыт коммерческой разработки, ни про опыт работы в принципе. Ты себе там что-то нафантазировал и теперь срешь в тред.

>7 лет опыта.


У нигде не писал про 7 лет опыта. Но раз уж ты не понимаешь, дополню инфу про мой опыт работы:
1 год на червепидорской должности уровня курьера яндекс еды, параллельно обучение в вузе на комьютерсаенс очно-заочно
3.5 года работы манагером низшего звена. Именно менеджером в прямом смысле этого слова, а не продажником. Параллельно заканчивал обучение в вузе, где-то на середине начал пилить по заказам сайты на дефолтном кабанском стеке jquery select2 bootstrap bitrix потом перекатился на вордпресс. В последствии забил хуй и начал пилить пет проекты на TS, ванильном css и ванильных же веб компонентах. Параллельно дрочил задачки с codeforces синий ник кстати на с++
Ну и потом я получил диплом и устроился реакт макакой, дальше ты знаешь.

>Не поверишь...


Не поверю. Давай мне сюда определение того, что явялется блатом в твоем понимании. Сейчас ты только маняооправдания уровня "Это не это" можешь высрать.
2022-07-05x05:18:48.jpg319 Кб, 2042x1439
145 2396497
да ебанные вы поголове сука как можно жить без ЭНУМЕРЕЙТА сука меня тресет уже просто пиздец уууууу

ну как блеадь!?

++hui++

или как?
2022-07-05x05:36:27.jpg100 Кб, 1071x704
146 2396498
>>396497
адище блядское...
147 2396505
>>396497
Object.entries() чем не устраивает?

На пике код из дурки?
148 2396507
>>396505

> Object.entries() чем не устраивает?


подумой

> На пике код из дурки?


напиши лучше
16566816761070.jpg104 Кб, 750x816
149 2396517
Редакс тулкит не определяет мне тип initialstate, который я импортировал в другой модуль. У меня такое впервые, чтобы не я обосрался, а пакет, и ничего сделать нельзя
150 2396520
>>396517

> чтобы не я обосрался


> юзает Редакс в отсталом ректе

151 2396522
>>396520
а че надо юзать
152 2396524
>>396522
native код и immer
153 2396529
>>396517
таки я обосрался, редюсер в сторе не указал. ну вот опять обосрался и обосранные шорты вам показал да что же это творится
изображение.png18 Кб, 682x175
154 2396576
почему removeEvent не работает? событие up срабатывает, но обработчик события move все равно работает
155 2396577
>>396507

>напиши лучше


как минимум, s[0,1,2,3] и d[0,1,2,3] можно в один цикл зассунуть

>подумой


У тебя var, ты не думоешь, ты вкатываешься
изображение.png18 Кб, 460x239
156 2396609
>>396576
вот так обернул и заработало. как можно по нормальному сделать?
157 2396624
>>396609
Как минимум не пользоваться this в жабоскрипте
158 2396631
>>396624
а this тут при чем? что так что так одно и тоже. только с this короче и элегантней выглядит
16524596965870.jpg17 Кб, 280x265
159 2396662

>Я без опыта костыливание на вордепрессе + jquery не идет в счет устроился реакт макакой за 100к/месяц год назад.


>Т.е. 2 года опыта верстания шаблонов на вордпрессе, параллельного самообучения, 5 лет работы в <компаниянейм>, из которых несколько лет непосредственного изменения бизнес процессами не являются опытом?

160 2396743
Внимание! Возможно самый важный вопрос за все время существования этих тредов: точки с запятыми нужны или нет?
161 2396752
>>396576
Бессмысленный говнокод. Выше уже объяснили что this в этом контексте указывает на функцию-обработчик события. Писать надо было vertGradientColor.removeEventListener() а не this.removeEventListener()
162 2396753
>>396743
Это решается на уровне прекоммит хуков. Тебе условно должно быть похуй, как там точки в коде расставляются.
163 2396757
>>396752
да я уже исправил, код работал не как ожидалось, как оказалось
164 2396760
>>396753

>прекоммит хуков


Это сеньры-помидоры настраивают и миддлы настраивают? Я просто хочу обычный пет-проект отрефаткорить, чтоб выглядело не совсем уж всрато.
165 2396767
>>396090

>Что скажете?


Ничего не скажу. Если бы ты просто книги читал, ты бы даже не знал что такая проблема существует. Все эти техники отрабатываются на практике. Написание проектов в большинстве своём - это бесконечное самосовершенствование. Вначале ты делаешь хуйню. Потом ты чуть улучшаешь. Потом ещё. И ещё. И ещё. И в конце превращается в годный продукт. Вопрос только в том, стоят ли усилия результата? То есть - стоит ли вообще возиться с этим проектом?
166 2396777
че там классы нормальные в жабу завезли? все браузеры их поддерживают? уже можно вкатываца?
167 2396779
>>396760
В жсе это настраивается через prettier + husky. Помидором быть не обязательно.
168 2396783
>>396781 (Del)

>говно из жопы


т.е. в жабе все как прежде? ну понятно
552309436.jpg58 Кб, 700x566
169 2396785
>>396781 (Del)

> иерархия функицональных типов


> омномном

170 2396797
>>396785
ООП придумало концепцию иерархии!
171 2396822
>>396743
Даже standard не смог это решить, поэтому есть standard и semistandard
172 2396823
173 2396833
>>396800 (Del)

>У JS задача - получить числа, обработать, и вернуть другие числа


Так, ладно, допустим, я шиз, который хочет так и сделать.
Мне жс вернул что-то после манипуляций с апи, дальше как сделать так, чтобы в html поменялось текстовое наполнение блока и классы?
174 2396845
>>396743
они нужны хотя бы для того, чтобы обозначить, заканчивается у тебя выражение или нет
175 2397015
>>396844 (Del)

>Прописать переменную в html


Лол, что?
177 2397038
>>392245 (OP)

>В JavaScript нет GIL, однако, JS — это однопоточный язык


Нипонял блять. Если в ЖС нет нужны в глобальной блокировке интерпретатора (которая есть в Петухоне например, для того чтоб данные не скорраптились во время сборки мусора) то какого хуя тут 1 поток? Почему нельзя запилить нормальную многопточку на Ноде? воркеры сразу нахуй лол, это же не тред а по факту отдельный интерпретатор жса поднимается
178 2397055
>>397038
В волшебном жс данные не корраптятся при многопокпоке?
179 2397066
>>397038
на ноде некоторые методы работают больше чем в 1 поток, те которые на с++ написаны
180 2397090
>>397038
Ебин, многопоточка на трэдах пиздец прожорливая по памяти и проседает по производительности. Нахуй не нужна для нагруженного IO
181 2397100
>>397090

>IO


А если это не IO, лол?
182 2397107
>>397100
Для тяжелых вычислений создаются трэды, но с ними нет ебли по синхронизации, так как внезапно они занимаются только вычислениями

Все IO крутится в реакторе на одном трэде
183 2397108
>>397090
Прожорливая она только если тредов ну слишком дохуя, например счет пошел на несколько сотен (кстати если у тебя асинхронка на 1 потоке и дохуя тасок в ивент-лупе висит это не лучшим образом отражается на быстродействии сервака и сборке мусора). В Жаве например заранее создается пулл тредов и в случае нового коннекшна берется один из свободных, бесконечно они не плодятся, зато в таком случае ты используешь все ядра своей машины а помимо этого - не блокируешься на CPU-операциях, в ЖС если в твоей async-функции встретится блокирующая операция парсинга например или обработка пары десятков тысяч извлеченных строк из БД, весь твой мейн тред заблочится
184 2397111
>>397108
Нода в первую очередь для IO пилилась, а хайлоад через пул потоков это рофл. Да, иногда бывает что вычисления тормозят основной трэд, но исключение и они решаемы.
185 2397155
есть смысл писать проверку
array && array?.length && <Component>
или можно просто
array?.length && <Component>
186 2397161
>>397155
array && Array.isArray(array) && array?.length && <Component>
187 2397164
>>397111
Хайлоад это го. в основе которого лежат внезапно именно треды, правда легковесные
Хайлоада на ноде без шаманства с горизонтальным масштабированием в принипе быть не может
188 2397166
>>397161
Это не перебор?
189 2397170
>>397161
array && typeof Array !== "undefined" && typeof Array.isArray === "function" && typeof Array.isArray([]) === "boolean" && Array.isArray(array) && array?.length && <Component>
190 2397171
>>397155
<Component items={array ?? []} />
191 2397173
>>397171
Точно, спасибо
192 2397220
сап, сосак. Keydown и keypress зажимают кнопку при нажатии, как это пофиксить? Чтобы даже когда зажимаешь кнопку действие происходило только один раз
193 2397231
>>397220
onClick
195 2397249
>>397246
Да, можно авейтить без функции, только это как есть ножом, да, чуть форму изменили, но язык все равно режет.
196 2397252
>>397249
Подождем ES2025
197 2397257
>>396577

> как минимум


а максимум?

> У тебя var


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

если ты привык жрать дерьмище уебищное, вместе с .length сука, то я нет и я на хую вертел это уебище.
198 2397259
Всем привет, Народ, ни у кого не завалялся канторовский учебник по js. Купить могу, но вдруг кому не жалко??
199 2397270
>>397220
addEventListener("keydown", ()=>{}, {once: true})
200 2397284
>>397270
Постараюсь обьяснить подробнее. У меня при нажатии включается залипание клавиши, как его убрать? once: true это одно единственное нажатие
201 2397358
>>397284
Нихуя не понял твоего высера. Кидай кодепен или иди нахуй.
202 2397359
>>397358
Сука ну ты тупой валенок хуле.
203 2397367
>>397284

>Постараюсь обьяснить подробнее


Залипание клавиш - это фича винды такая, какое оно отношение к JS имеет? Олсо, >>397358 прав. Ты либо описывай свою проблему так как написано в оппосте:

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


либо гуляй.
204 2397403
>>397358
>>397367
пиздец душнилы затравили мартышку несчастную..
2022-07-06x08:13:03.jpg48 Кб, 731x735
205 2397497
как справится с этим дерьмом? (первый блок, второй работает все заебись)

как переназначить ебаную часть обжекта, но чтобы остальная осталась??
2022-07-06x08:21:06.jpg9 Кб, 693x63
206 2397498
изи ептоу
2022-07-06x08:29:45.jpg36 Кб, 561x441
207 2397505
злоебаное дерьмище как же сука тресет эта сука не соображает что надо пёхнуть когда эта параша апается

ну и плюс надо распидорашивать это говно перед добавлением, иначе оно заменяет нахуй весь дикт уууу блядь и дерьмище какое же убожество просто для ублюдков пиздец просто...
208 2397506
>>397497
Напиши уже deepMerge наконец, че ты с этим дестракторингом ебешься
1657086126911.png63 Кб, 974x695
209 2397511
>>396844 (Del)

> Прописать переменную в html. Работа с макетом должна оставаться в макете работа со стилями в стилях..



> Понятно конечно, что всем этим будет заниматься по итогу подключенная либа. Но на уровне API всё будет ровно - никакого смешивания.



Что-то по типу этого?
210 2397512
>>397497
Это у тебя редюсеры такие? А нахуя в первом из них присваивание? Да ещё и в свойство аргумента.
2022-07-06x08:38:17.jpg125 Кб, 1289x1115
211 2397513
>>397506

> Напиши


слишком сложно много визуального шума, досвиданья.
15893174576410.png205 Кб, 476x477
212 2397514
>>397513
npm install deepmerge
@
import deepmerge from 'deepmerge'
rec-2022-07-0608.59.02.mp416,8 Мб, mp4,
2604x1440, 0:19
213 2397518
>>397512

> редюсеры


чего бля? я вашей скотопидарской терминалогии не понимаю и понимать не собираюсь (вместе со скотопидарскими ублюдскими ключевыми словами)

есть простое нерусское слово АККУМУЛЯТОР и я в душе не ибу как его здесь применить, а главное нахуя

я просто пытаюсь захуярить динамические опции и это должно быть проще простого, ведь у нас реактивность, а не хуй собаки, но это жсговно и надо ДЕЛАТЬ ПОПРАВОЧКУ

>>397514
котей, ты пынямаешь разницу между написать и инсталлировать?

не хочу тебя обидеть, но у меня возникают сомнения на счет твоей проф пригодности..
214 2397525
>>397518
Не хочу тебя обидеть, но ты ебобо, которое себе на ровном месте проблемы выдумывает.
215 2397546
>>397518
Да все уже поняли, что ты пытаешься написать что-то на языке, которого не знаешь (результат немного предсказуем), отчего у тебя бомбит на весь тред.

Лучше ответь, что ты пытаешься сделать с помощью этой конструкции:

> ...dict['name'] = {


> vAxis:{


> title: 'ny i dermishe',


> }


> }


?

Функция твоя называется "add_to_opt", но ты с какого-то хуя пишешь "dict['name'] = ", это добавляет не в options, а перезаписывает свойство 'name' внутри 'dict'. Нахуя? Что ты вообще имел в виду этим?
216 2397550
>>397525
я называю

> проблемы


задачами

лучше так, чем быть додиком спрашивающим на дваче что сделать..

>>397546

> с помощью этой конструкции


я показал ход мыслей, в питоняшке это добавление дикт айтема

пиздец ты реально из-за своей духоты не понял что я это сделал для ПРИМЕРА
HDEGzky9-rs.jpg129 Кб, 600x599
217 2397553
>>397550

>я называю


>> проблемы


>задачами

218 2397560
>>397518

> есть простое нерусское слово АККУМУЛЯТОР и я в душе не ибу как его здесь применить, а главное нахуя


Редюсер — это функция, которая с этим аккумулятором и работает. Так что если твой options — аккумулятор, то нахуя ты в dict что-то записываешь?

>>397550

> я показал ход мыслей, в питоняшке это добавление дикт айтема


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

> пиздец ты реально из-за своей духоты не понял что я это сделал для ПРИМЕРА


Лол. Сам выдумал для примера хуйню, а потом: "как справится с этим дерьмом? (первый блок, второй работает все заебись)".

Предлагаю тебе ДЛЯ ПРИМЕРА написать в терминале "rm -rf", а потом приходить спрашивать "как справится с этим дерьмом?".
2022-07-06x10:03:26.jpg222 Кб, 1964x1200
219 2397583
>>397553
не я такой, жизнь такая..

>>397560

> это функция


итератор

> твой options


дикт

> выдумал для примера хуйню


а ты должен был показать как надо, а не душнить здесь блядь анрилейтед хуетой

> написать в терминале "rm -rf"


нихуя не будет глупая нюфажина..
220 2397597
>>397583

> > это функция


> итератор


При чём тут итератор?

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


Так нихуя ведь не понятно, что ты пытался добиться своей конструкцией. И раз во втором блоке всё работало нормально, то почему в первом сделано по-другому? Это как прийти и спросить:
"Сап двач, пытаюсь пожарить котлеты. Когда провожу хуем по ободку раскалённой сковороды, то очень больно и котлеты не готовятся. Как справиться с этим дерьмом? (это в первом случае; а во втором случае, когда я фарш на сковороду кидаю, всё работает заебись)".

А на все вопросы о том, для чего вообще хуем по раскалённой сковороде водить, отвечать, что это ДЛЯ ПРИМЕРА, чтоб показать ход мыслей, а вы все должны объяснить, как правильно делать, а не душнить.
221 2397626
>>397597

> итератор


работает с акком

у меня уже 30.8оС, прикрати немедленно!
222 2397697
Есть мобх, тайпскрипт, реакт, я не понимаю как сделать логику фильтрации тудушек по их состоянию комплитед и через радио группу показывать списки нужных... пиздец я тупой похоже, никогда раньше не пробовал мобх, а тут дали тестовое.
Если создавать дополнительный массив с отфильтрованными это же плохая идея?
223 2397699
>>397597
разговор со шнобелем - это примерно как разговор с копипастой
224 2397709
>>397697
В этом мобх селекторов нет что ли?

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


Абсолютно. В сторе держишь нормализованные данные, всё остальное вычисляешь из них
225 2397728
>>397699

> шнобелем


Это как?
226 2397735
>>397728
Это когда у тебя мамка с неграми якшалась и получился ты.
227 2397736
>>397728
это местная нейросеть, угадывается по словам "додик", "пиздорылый", "питоняша", "проф пригодность", "профнепригодный" и скринам размером 3440x1440
228 2397742
Есть реакт-компонент с кнопкой. По нажатию этой кнопки происходит редирект на главную страницу (react-router-dom). Нужно, чтобы после редиректа на главной странице вызывался алерт с текстом по типу:"%действие% выполнено".
Узнал, что в хук useNavigate можно вписать кастомный стейт. Как из компонента главной страницы достать этот стейт?
229 2397749
>>397742

>Есть реакт-компонент с кнопкой. По нажатию этой кнопки происходит редирект на главную страницу


Сделать эту "кнопку" ссылкой, а текст показывать перед ней.
230 2397753
>>397749
У меня после нажатия кнопки редирект происходит на главную страницу. Нужно юзеру показать, что его действие успешно завершилось. Нашел инфу, что стейт useNavigate можно отследить useLocation.
231 2397757
>>397709
Я не знаю что такое селекторы (пиздец).
Если я в самом компоненте делаю что-то типа const todotodisplay = filter === "all" ? todostore.todos : todostore.completedtodos
и тд это же тоже самое что продублировать данные? Пиздец я даун.
image.png266 Кб, 1366x701
232 2397758
как выглядит сайт на оч большом мониторе, как пикрилейтед? мне не нужно 5к картинку искать?
233 2397763
>>397753

>У меня после нажатия кнопки редирект происходит на главную страницу.


То есть ссылка.

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


Так и показывай это перед ссылкой.
234 2397769
>>397757
Глянул в спеку, селекторов нет, но есть их аналог

https://mobx.js.org/api.html#computed
235 2397782
>>397246
Когда полная поддержка?
236 2397784
>>397697
эт на джуна тестовое?
237 2397791
>>397784
Вроде того.
Нихуя непонятно как структурировать всю хуйню, что в компоненте держать и как надо, ищешь что-то, а там написано для старых версий, жспараша
238 2397800
>>397791
чет много знаний от джюна требуют, не? какая зп?
239 2397808
>>397697
Просто там где ты отрисовываешь делаешь дополнительный массив типа const filteredArray, который фильтруется по твоим условиям
240 2397818
>>397800
40к удаленка, разве сейчас для джунов требования не гига высокие везде в айти?
>>397808
Я вот про это и спрашиваю, это нормальная практика такие массивы делать с дублированием части данных?
241 2397820
>>397818
Ну мы так на стажировке делали, а вообще по идее фильтрации и сортировки на бэке делаются
242 2397824
>>397818

>40к удаленка, разве сейчас для джунов требования не гига высокие везде в айти?


не знаю, видимо.
такто ты учишь весь базовый стек, а дальше уже учить не много нужно, поэтому наверное это правильно
243 2397826
>>397742
Какое действие выполнено то нахуй? У тебя действие выполняется при нажатии на кнопку, там и выполняй действие и показывай пользователю нужную инфу.
244 2397834
Если мне в модалку нужны данные с бэка, мне в самой модалке их получать или выше? По идее пока я модалку не открыл мне эти данные не нужны
245 2397845
>>397826
Ну есть кнопка которая отправляет айди итема на бэк чтобы удалить его. Если мне придет ответ, что бэк удалил слово, нужно сделать редирект клиенту на главную. И на главной нужно показать попап или другую хуйню что итем удален.
246 2397848
>>397845
Тебе религия не позволяет этот попап показать на странице с кнопкой удаления?
247 2397849
>>397848
Зачем мне показавать клиенту айтем, который он только что удалил?
248 2397850
>>397849
А зачем его показывать на главной странице?
249 2397851
>>397850
Чтобы показать клиенту что он удалил айтем.
250 2397856
>>397851
И что тебе мешает вызывать его на странице удаления?
opengraph.png13 Кб, 796x416
251 2397858
Объясните плез, Jest правда не работает с ESM без танцев с бубнами, или я что-то не вдупляю?
252 2397860
>>397845
Ты тупой?
Показываешь юзеру твой тост на странице с кнопкой и сразу редиректишь на главную.
253 2397861
>>397858
Не работает.
254 2397862
>>397860
Редирект мгновенно происходит. Не буду же я таймер вешать на тост с последующим редиректом.
255 2397865
>>397858
Включай экспериментальную поддержку ESM в нём и жри говно.
256 2397869
Я конечно проигрываю, что тестовые пакеты - основной барьер массового переката на ESM. Это просто самые сливки TDD, про которые свидетели будут верещать, что это не TDD виновато.
257 2397871
>>397862

>таймер вешать на тост с последующим редиректом


Ты тупостью троллишь?
258 2397873
>>397871
Нет, он дохуя UX девелопер, тебе не понять.
259 2397875
>>397873
Да, я понял что он на уровне того дата саентиста поехавшего.
260 2397876
>>397871
Ну а как это делать, чтоб юзер увидел этот попап и отправить его на главную?
261 2397878
>>397876

>попап


Я тебе про тост говорю, тупица.
262 2397882
>>397876

>попап


>тост


>алерт


Ты определись для начала, что ты хочешь получить
263 2397884
>>397882
Я хочу битки майнить при удалении.
264 2397885
>>397865

>жри говно.


Нет, Джест хороший. А аналогов нет.
265 2397890
>>397882
Да я не знаю как в веб-параше это называется. Нужно просто вывести небольшой <div> в верхнем углу экрана с крестиком. В нем черным по белому написано: N элемент удален.
Я с useNavigate({state:...}) отправляю клиента на главную, где отлавливаю стейт с useLocation. Все бы ничего, но при F5 на главной странице это уведомление снова появляется.
266 2397909
>>397818
Нормальная практика. Если массив большой в usememo заверни или про селекторы погугли. Если там больше десятка элементов в принципе не бывает, то сортируй хоть каждый рендер.
267 2397914
>>397890
Ну заведи себе глобальный стор, где будет список тостов. Сделай компонент который их рисует и добавь на главную. Не надо в стейт роутера ничего пихать без особой нужды.
268 2397953
>>397890
Под твое описание попадает тост и снэкбар.

>отправляю клиента на главную


Еще раз поясняю для тупого вкатуна. Ты не должен отправлять клиента на главную твой порядок действий:
1) Юзер запускает действие
2) при ошибке - обрабатываешь ошибку
3) При успехе: создаешь тост/снэкбар и после этого делаешь редирект на главную. Тост при этом остается висеть на странице то таймаута/ручного удаления.
269 2397955
>>397914

>Ну заведи себе глобальный стор, где будет список тостов


Оверинжениринг. Пишется на ванилле в 10 раз короче и понятнее чем эта мешанина из стэйтов, сторов и контекстов.
270 2397979
>>397890

>Я с useNavigate({state:...}) отправляю клиента на главную, где отлавливаю стейт с useLocation. Все бы ничего, но при F5 на главной странице это уведомление снова появляется.



У тебя роуты фейковые, там ничего не редиректится. Поэтому ты можешь смело оборачивать страницу в какой-нибудь лейаут и дальше делать так:
<Layout>
<Toast />
<MainPage />
</Layout>

и всё. Страница сорсит некий стор свыше, что хочешь и когда хочешь, то и размещаешь.
1.jpg22 Кб, 426x487
271 2398044
Годнота? Вместо node и deno

https://bun.sh/

bun is a new:

JavaScript runtime with Web APIs like fetch, WebSocket, and several more builtin. bun embeds JavaScriptCore, which tends to be faster and more memory efficient than more popular engines like V8 (though harder to embed)
JavaScript/TypeScript/JSX transpiler
JavaScript & CSS bundler
Task runner for package.json scripts
npm-compatible package manager

All in one fast & easy-to-use tool. Instead of 1,000 node_modules for development, you only need bun.

Bun.js uses the JavaScriptCore engine, which tends to start and perform a little faster than more traditional choices like V8. Bun is written in Zig, a low-level programming language with manual memory management.

Most of Bun is written from scratch including the JSX/TypeScript transpiler, npm client, bundler, SQLite client, HTTP client, WebSocket client and more.
272 2398049
>>398044

>JavaScript runtime with Web APIs like fetch, WebSocket, and several more builtin


Нихуя себе, в ноде такого нет наверно
273 2398061
>>398044

>npm-compatible package manager


>All in one fast & easy-to-use tool. Instead of 1,000 node_modules for development, you only need bun.


Очень прохладно.
274 2398067
Есть какая-то возможность ускорить отправку из вебсокета в хроме?
Мелкие пакеты суки не отправляются вообще, видимо пока кокой-ты буфер не заполнится.
275 2398073
Короче добавил лишний байт чтоб было 4 байта, пакет сразу уходит. Хуета какая-то гейская, яебал.
276 2398082
Господа, есть дата в виде цифра + слово месяца. Например, '7 июл'

Можно ли её преобразовать в нормальную дату, используя методы самого Date?
277 2398112
Если у меня есть карточки категорий товаров на фронте, то я должен из базы данных в стейт тащить их или база с категориями отдельно и карточки на фронт отдельно?
278 2398132
>>398112
Отдельно конечно же, так как в нормально организованной бд категории будут идти внешними ключами.
279 2398157
>>398082
function getDate(dateStringRu) {
const monthsNames = Array.from({ length: 12 }, (_, monthIndex) => {
const date = new Date();
date.setMonth(monthIndex);
return date.toLocaleDateString('ru-RU', { month: 'short' });
});

const [day, month, year = new Date().getFullYear()] = dateStringRu.split(' ');
const monthNum = monthsNames.findIndex(monthName => monthName.includes(month));

return new Date(year, monthNum, day).toLocaleDateString('ru-RU');
}
280 2398162
>>398157
Нахуй ты работу демпингуешь, чорт? Мог бы косарь запросить.
281 2398169
>>398162
Ты не понимаешь значение слова «демпинг».
282 2398193
>>397856
Низкий уровень интеллекта =(
283 2398198
>>398193
Так если был бы низкий, то как раз бы не заморачивался всякими хуками с контекстами и просто бы хуярил useEffect() с проп дриллингом колбэков.
А так ты каноничный midwit.
2022-07-06x21:41:15.jpg73 Кб, 1367x438
284 2398199
>>397884
биток всё, начинай майнить тушняк с гречей.

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

>>398044
а могли бы просто навернуть FastAPI и перестать жрать тормозное убогое говнище
285 2398204
>>398198

>midwit


Как-будто на двачах бывают умнее.
286 2398210
>>398199

>а могли бы просто навернуть FastAPI


Зачем? Ты из мира Pysechki будешь верещать про перформанс?
287 2398211
>>398199
биток нужно покупать
rec-2022-07-0622.03.05.mp415 Мб, mp4,
1928x1440, 1:17
288 2398221
почему когда я втыкаю позитивный ключ в forceIFrame - то это паскудное гуглоуебище начинает работать через анал?

то что зум не работает на лог виде - это походу не баг, а фича пиздорылых додиков из гхугла

но с каких хуев панинг отваливается когда я форсирую айфрейм!? притом его можно забагать и он сорт оф будет

минвайл если отключить айфраейм, то пан появится, но отвалятся стили для тайтлов

в вашем вебоуебище хоть что нибудь ПРОСТО РАБОТАЕТ ?

>>398210

> будешь верещать про перформанс


у тебя стокгольмский синдром додик, ты обожрался говна..

>>398211
додь, его в еуроппе уже начинают регулить, а тогда он нахуй невосрется маргиналам - и его сольют все олмост инстантли
289 2398223
ну и самое главное я не могу переключать эту опцию РЕАКТИВНО потому что вся параша должна перерисоваться..
290 2398233
>>398199
шнобель, спок.
291 2398245
хочется написать расширение для хрома для чтения текста вслух. какие подводные камни? передача текста в яндекс клауд, он возвращает аудио. звучит просто
292 2398264
>>398245
Хром забанит яндекс клауд.
Яндекс клауд забанит неядексовские браузеры.
Готовь проксю короче.
293 2398279
ну хуле вы, немидвиты епт, обдристались да?
294 2398302
>>398264
то есть vps с нодой и все пересылать через нее?а других траблов не будет?
295 2398349
>>398302
Глухой пользователь расширения.
2022-07-07x03:31:36.jpg469 Кб, 3440x1440
296 2398357
>>398349
не глухой, а тупой
297 2398396
>>398357
шнобель, спок.
298 2398488
>>397834
бамп вопросу
299 2398539
Работяги и бездари, где искать материал по vue? На ру и англ ютубе все не очень, курсы на торентах зачастую по vue 2, а не 3. Порекомендуйте хоть что-то
300 2398571
>>398539

> по vue


оф дока почти топовая

нахуй тебе еще что то?

но вообще классика это тот порноактер с квадратной челюстью из акадимайнд и толстый пидарок с мерзким голосом
301 2398605
Анончик, что нужно знать по алгоритмам и паттернам для устройства стажером/джуном фронтендером?
302 2398669
>>398605
Ничего, фронтомакаке такое знать не положено, а то у тебя не дай бог рвотный рефлекс будет возникать от одного взгляда на очередной ряктовысер.
303 2398683
>>398605
Да самую базу только. Пояснить за структуры данных, big O, дерево там уметь обойти. Паттерны джуну не нужны.
304 2398692
>>398683
observer pattern нужен чтобы понтануться
305 2398775
Как бы выкатиться с помойного проекта, не задев чувств коллег? Подвох в том, что работаю в компании уже приличное количество времени и уже было научился сдерживать помойность их проектов, но сейчас перекинули на дно днищное. Прямо вот с порога заявить, что качество кода настолько говно, что они его не вывезут? Или напиздеть про то как классно со всем вами было, но пора идти дальше?
306 2398777
>>398775
Сорян, не тот трэд
307 2398806
>>398775

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


Напиши заявление на увольнение, а в заявление не пиши текст, вставь только картинку с Ельциным, который говорит новогоднюю речь.
308 2398814
>>398775

>Прямо вот с порога заявить, что качество кода настолько говно, что они его не вывезут?


Можно сначала просто попроситься в другой проект, потому что этот не нравится. Потом уже можно подробнее, если будут спрашивать, что не так, говорить, что не нравится такое, ну и если не поймут, то прямо сказать, что это говно.
309 2398850
>>392245 (OP)
Скачал виртуальную клавиатуру. Но нажатие кнопок там задано просто буквами QWERTY. Не работает ни на одной раскладке, кроме английской.
Какие естт способы это фиксить?
310 2398861
Пишу на руби. Хочу сделать маленькую приложуху с веб-интерфейсом для конфига и раздавать её домохозяйкам. Самый простой способ - поднимать веб-сервер на синатре на локалхосте и говорить юзеру, чтобы открыл браузер. Вроде работает как надо.

Вопрос: сильно ли будет сложнее сделать это всё на электроне? Чтобы юзверь кликнул на иконку и запустил окошко? Или я заебусь руби к нему прикручивать? Там много джаваскрипта надо знать?
311 2398866
>>398861
Ну, то бишь, там будет одна страничка, нашлёпанная на шаблонизаторе HTML для руби, это можно ПРОСТО ВЗЯТЬ И запускать в десктопном электроновском окошке вместо браузера?
312 2398885
>>398861
Конечно сложнее, так как тебе ещё надо будет с нодой пердолиться. Плюс ты, как рубист, не имеешь опыта пердолинга с npm, а электрон просто хуеву тучу пакетов тянет.
313 2398887
314 2398911
Что значит это выражение?
js первый раз трогаю, и то факультативно

row !== undefined ? row.username == 'admin' : false
315 2398912
>>398911
Вроде похоже на тернарный из си, но это я сам себе отвечаю
316 2398917
>>398912
Он и есть. Посути это `row.username == 'admin'`, а остальное проверка чтобы на пустом row код не упал.
изображение.png53 Кб, 615x313
317 2398924
>>398917
Хоть что-то знаю
Вопрос поинтереснее — что тут происходит? Вроде как проверяет айпи на 127.0.0.1 и если да, то возвращает 401, а в другом случае просто закидывает логин и пароль дальше?
318 2398932
>>398924

>Вроде как проверяет айпи на 127.0.0.1 и если да


Наоборот же, ну.
319 2398934
>>398932
А, да. Проглядел. Проблема в том, что вот это говно у меня висит как раз на локалхосте и возвращает примерно ничего
320 2398935
>>398934
Дебагер и console.log() в помощь.
321 2398936
>>398924
Ну req.body это очевидно тело запроса, оттуда достаем юзернейм и пароль, чтобы не писать каждый раз req.body.username
Это деструктуризация, не в каждом языке есть.
По синтаксису на вебсокеты похоже
322 2398944
>>398932
Так. глянул я по совету товарища выше логи, и увидел, что в ответ на запрос с локалхоста оно кидает 401. Тут что-то не так
323 2398947
>>398911
Выражение значит что говнокодер писал какой-то
324 2398950
>>398944
Посмотри что в remoteAddress приходит.
изображение.png75 Кб, 689x186
325 2398952
>>398947
Это htb, мне нужно флаг достать

>>398950
Внезапно вылазит вот это. Кстати, до этого отрабатывала именно эта ветка, поэтому ничего не показывало, видимо
326 2398954
>>398952
Ты что написал блэд?
console.log(req.socket.remoteAddress) в студию.
изображение.png1 Кб, 146x21
327 2398955
>>398954
Тупняк, да
Оно стало вот так
328 2398956
Это говнокод или такое допустимо писать?
Condition1 ? result1 : condition2 ? result2 : condition3 ? result3 : condition4 ? result4 : default
329 2398958
>>398955
Это ipv6? Ну значит условие нужно поменять, а не только ipv4 чекать.
330 2398960
>>398958
Не, трогать исходники нельзя. Они валяются на ремоут серваке, и мне нужно сформировать запрос, который обойдёт эту хуйню
331 2398961
>>398956
Говнокод, обычно такое читать невозможно. Но и сам так пишу
332 2398962
>>398960
Подключись к бд и зарегайся руками тогда.
333 2398964
>>398962
Это изи уровень, так что вряд ли тут бд надо ломать. В целом, всё жсовское я уже узнал, и пойду дальше думать
А 172.17.0.1 — айпи внутренней сети докера. Хз как локалхост получить
334 2398966
>>398956
блять не пишите так, недавно час распутывал трехэтажную тернарку
335 2398973
>>398887
О, спасибо, потыкою!
336 2398980
>>398964
Ладно, я вернулся. Откуда socket.remoteAddress берёт айпи? В доках не написано, но аналоги дёргают из X-forwarded-for. Может, оно тоже?
337 2398982
>>398980
Ты прямо из этого контейнера код запустить не можешь? Ну или хоть телнет запустить?
338 2398985
>>398982
Это не полноценная машина, а просто челлендж. Тут не нужно влазить на машину и устраивать в ней RCE
Мне просто надо отправить пакет, чей ip определится как 127.0.0.1, и я считай прошёл. Но надо понять, откуда этот метод (socket.remoteAddress) берёт айпишник. Вот и спрашиваю у жсеров
339 2398989
Аноны, а есть ли какое видео клевое есть где и бек на фичах пишут с ручками всеми и по ресту на экспрессе?
340 2399002
>>398959 (Del)
>>398961
>>398966
И какой выход из положения? Свитч? If в три этажа?
341 2399004
>>399002
удваиваю этого
342 2399007
>>399002
У тебя и так иф в три этажа.
343 2399034
>>398956
>>399002
А как условия выглядят, что проверяешь?
344 2399041
>>399034
Проверяю тип аргумента. Язык ведь динамический, вдруг там строка заместо объекта придёт.
345 2399058
я бы присмотрелся к этому ответу >>399018 (Del) тут уже обсуждали
346 2399065
Сап. На связи C# КОНЕЦ СПИНЫ программист, хотел бы попробовать стать ПОЛНАЯ СТОПКА программистом. Для чего дела решил выучить такие технологии, как ТИПСЮЖЕТА и УГЛОВАТЫЙ. С чего начать, что читать/смотреть/слушать?
347 2399074
>>399065
тип сюжета это костыль к джавасценарию, за угловатый не знаю но советую реагировать, смотреть документации, видео на ютубе, свободный лагерь кода
изображение.png7 Кб, 603x26
348 2399141
Сюда же можно инжекшн впилить, если я правильно понимаю?
349 2399171
>>399065

>УГЛОВАТЫЙ


Загнан в угол быстрым и чотким РЕАКТИВНЫМ и зеленым узкоглазым ЗЕЛЕНЫМ
350 2399181
>>399141
Как нехуй делать, это дыра в чистом виде.
351 2399191
>>399181
Ну и славно. Я нашёл дырку, но для её использования нужно найти ещё одну

А следовательно, мой вопрос про socket.remoteAddress всё ещё актуален
>>398985
352 2399194
>>399041
Через || может тогда, раз так много лжи?
353 2399197
>>399171
Зелёный ускоглазый ВИДОК же
354 2399225
>>399197
и не реактивный а РЕАГИРУЮЩИЙ
355 2399226
>>398956
Пишичерез if else лучше. Минификатор все равно тернарку высрет в прод, так что похуй
356 2399227
>>398985

>Вот и спрашиваю у жсеров


Поиском по гитхабу не судьба?
https://github.com/nodejs/node/blob/8e19dab677e64ec5ba40ab8523d23d02c92a24a2/lib/net.js#L807
357 2399244
>>398956

> Это говнокод или такое допустимо писать?


> Condition1 ? result1 : condition2 ? result2 : condition3 ? result3 : condition4 ? result4 : default


>>399002

> И какой выход из положения? Свитч? If в три этажа?



[
[getCondition1, getResult1],
[getCondition2, getResult2],
[getCondition3, getResult3],
[getCondition4, getResult4],
].reduce(
(
[isDone, getPrevResult],
[getCondition, getCurrentResult]
) => !isDone && getCondition() ? [
true,
getCurrentResult
] : [
isDone,
getPrevResult
],
[false, getDefault]
)[1]();
358 2399258
>>399171
А почему в ру вакансиях в каждой второй он?
359 2399259
>>399258
не пизди мразь
360 2399260
>>399259
Я ж не первый день мониторю хх. И речь идёт о ПОЛНАЯ СТОПКА вакансиях, где КОНЕЦ СПИНЫ это С#
361 2399261
Кто шарит в Redux, объясните плиз, нахера нужно диспатчить thunk, а не просто запустить его как функцию? Внутри же всё равно всё диспатчится как надо.
362 2399267
>>399261
Потому что это такой же экшн, но со специфичными аргументами. Плюс вьюхи ебать не должно, тханки они там прокидывают или джейсоны, они просто аргументики в экшн криэйторы передают.
GA68iSWJ1lk-00-07-54.png727 Кб, 1920x1080
363 2399268
>>399260
блядь ты со своим промптом уже заебал (навали скриптов на али, перестань жрать говно уебок блядь..)

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

а что до твоего индуссохуеглотского дотнета с уебищным куском говнобойлейрплейта за решоткой - то похуй абсолютно

очень хорошо что мелкопарашу насильно отменили у всех даунских кабанчиков.
364 2399275
Аноны, доброе утро. Посоветуйте пожалуйста хороший хост для деплоя backend. Для фронта выбрал vercel, вроде удобный и бесплатный.
365 2399281
>>399275
railway
366 2399283
>>399275
reg.ru
367 2399285
>>399065

>хотел бы попробовать стать ПОЛНАЯ СТОПКА программистом


А для чего? В чем профит? Зарплаты такие же или ниже, знать надо больше
368 2399287
>>399267

> Потому что это такой же экшн, но со специфичными аргументами.


Но у экшона нет аргументов, это же просто объект.

> Плюс вьюхи ебать не должно, тханки они там прокидывают или джейсоны, они просто аргументики в экшн криэйторы передают.


То есть, чтоб тханк-криэйтор снаружи выглядел как обычный экшон-криэйтор? В принципе, логично.

Но если уже унифицировать, то не легче ли вообще вместо любых криэйторов, результат которых надо диспатчить, сделать сразу экшон-диспатчеры? То есть это как экшон-криэйтор, но он экшон не возвращает, а сразу диспатчит. А компоненты его просто вызывают.
369 2399352
>>399268

>УГЛОВАТЫЙ


>ты пытался сказать что рект популярней вю


Вкатун, не знающий английского не палится
370 2399354
>>399268

>рект популярней вю, и вот это мислидинг хуета


Ты пьяный? РЕГАИРУЮЩИЙ популярнее чем все остальные фреймворки вместе взятые.
371 2399475
>>399352
ебанутое ты говнище блядский сука нгулур это такое паскудство уебищное что просто идинахуй сука.

>>399354
пожри еще этого тормозного говна с убогим дизайном, каргокультист недоебанный.
372 2399480
Какая часть в изучении JavaScript была для вас самой сложной тяжелой?
373 2399568
Аноны, а можно выучив JS, пропустив React перейти сразу к Node.js ибо мне интересен именно бэкенд?
374 2399591
375 2399614
>>399480

> Какая часть в изучении JavaScript была для вас самой сложной тяжелой?


понять нахуя это дерьмо было вообще создавать и пихать в ебанный браузер ...

так и не понял..

>>399568

> интересен именно бэкенд


можно всё жс говно пропустить и сразу перейти к питоняшке :>
376 2399615
>>399480
Именно джс не очень тяжёлый, тяжело на практике применять. А конкретно при изучении языка самое сложное для меня - это скоупы у функций или прототипирование объектов, именно сложность в том, как всё запутанно (prototype vs [[prototype]] vs __proto__) а не в самих концепциях
377 2399632
>>399614

>понять нахуя это дерьмо было вообще создавать и пихать в ебанный браузер


соглы, это всё возникло потому что нетскейп был пиздатый браузер и под него как раз сделали жаваскрипт
378 2399666
При нажатии на кнопку стоит функция, но есть проблема, что при зажатии кнопки включается залипание клавиш и функция ебашит сто тысяч раз. Как это исправить?
379 2399673
>>399666

> При нажатии на кнопку стоит функция, но есть проблема, что при зажатии кнопки включается залипание клавиш и функция ебашит сто тысяч раз. Как это исправить?


https://javascript.info/keyboard-events#auto-repeat
380 2399698
Куда лучше вкатываться, если хочу запилить свой веб-сервис?
В JS или PHP?
381 2399705
>>399666
Debounce
382 2399708
>>399698
JS разумеется. Можно педалить оба конца сразу и шарить код между ними.
383 2399713
Сейчас учу вёрстку, чтобы уже полностью разбираться, боже, какой же это калл
384 2399726
>>399713
а что не кал?
может надо было в питон вкатываться?
тоже во фронте разочарован пиздец, тошгнит просто
385 2399746
>>399673
И? Как исправить то?
>>399705
Не то
386 2399752
>>399568
Тебе для бэка реакт сильно хорошо-то и не надо знать, недельку поковыряй для базы и в ноду.
387 2399775
суп двощ, хочу зделоть игру суть такова... пользователь может нажимать на кнопки мышкой, и картиночки на кнопках будут меняться. Как это делать в 2022 надо? Так бы я просто канвас ебанул и готово, но с onclick на канвасе какие-то беды с обработкой кнопок. Делать кнопки отдельными элементами тоже какая-то залупа, ведь им придется быть поверх канваса, адаптивный интерфейс прикрутить не получится.
388 2399798
>>399775
<button> и <img> в 2022 уже не канают?
389 2399804
>>399746

> И? Как исправить то?


Там же написано:

> For events triggered by auto-repeat, the event object has event.repeat property set to true.



Соответственно, в начале своей функции, которая принимает event, пишешь:
if(event.repeat) return;
и она при повторах ничего после этой строчки не делает. Очевидно же.

Если надо ещё и отменить какое-либо действие по умолчанию, то можешь добавить false:
if(event.repeat) return false;
390 2399812
>>399798
Нет, мне еще рисовать надо будет на канвасе. button с position=absolute раскидывать - какой-то костыль
391 2399825
>>399804
Огромное спасибо анончик, работает
392 2399838
>>399726
рельсы
рельсы
нет не надо туда вкатываться
393 2399879
>>399838
рельсы -это зомби
394 2399885
>>399825
Не за что.

Вообще, старайся находить в учебнике релевантные темы и задрачивать их параллельно с написанием кода. Придётся иногда переписывать многое заново (когда начнёшь лучше разбираться в нужной теме и поймёшь, что до этого написал херню), но с каждым разом должно уже быть легче и быстрее.

Вот работаешь ты с клавиатурными ивентами — читай вдумчиво раздел учебника про это (и вообще про ивенты), ссылка у тебя уже есть. Ну и в целом желательно читать учебник, чтобы интуитивно понимать, например, что если функция вызывается слишком много раз, то это не такая уж проблема — можно просто внутри самой функции проверить что-нибудь с помощью if и сделать return, если надо. Или обернуть в другую функцию, которая проверяет условие, и вызывает основную функцию только в нужные разы. И тебе останется лишь найти нужное условие, которое можно проверять.
395 2399889
>>399885
Понял, спасибо
396 2399891
Все что я с бэка получаю лучше записывать в стейт менеджер? Если нет то как понять какие данные сохранять туда, а какие нет?
397 2399900
>>399891

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


Смотря в какой. Если в редакс - идешь нахуй, если в специализированный для серверного состояния менеджер, например react-query, то да.
398 2399902
>>399900
effector
399 2399906
>>399902
Пойдет, туда можно.
400 2399968
>>399838
на рельсах что пишут?
вкачусь куда хочу!
>>399900
почему в редакс нельзя?
401 2399971
>>399968

>почему в редакс нельзя?


Потому что редакс предназначен для хранения состояния клиента, только его. Никаких форм/серверного состояния и прочего в нем хранить не следует. В нем нет таких нужных фич как кэширование, инвалидация, нет возможности отслеживать загрузку/ошибки из коробки, огромное количество бойлерплейта.
402 2399975
>>399971
редакс хуйня получается?
почему на любых ваках его форсят изучать, если есть мобх?
я уже заебался учить новые и новые фреймворки, выясняя, что у них много хейтеров и есть альтернативы поулчше...
403 2399978
>>399975

>редакс хуйня получается?


Не хуйня. Я же говорю, используется для хранения состояния клиента.

>мобх


Тот же ни на что не годится кроме хранения клиентского стейта.
404 2400015
>>392245 (OP)
Объясните плез че за херня, может было у кого. Решил задеплоить приложуху на CRA на Github pages. До этого yarn start и yarn build с локальным серваком работали. Установил gh-pages, прописал predeploy и deploy скрипты, как в доке CRA пишут, запускаю скрипты и на продакшен, на локальной build сборке, на показывает пустой экран, будто приложения и нет никакого. Приходится откатывать и тогда снова работает.
405 2400018
>>400015

>че за херня


Удаляешь CRA и все заработает. Параллельно научишься еще сборщик настраивать.
Selection102.jpg11 Кб, 353x206
406 2400030
regex боль
нужны первые 6 цифр, а потом, вне зависимост от того, что идет дальше, дробная часть
например
11111111111.123
Я не пойму как второй паттерн с дробной частью записать так, чтобы он стригерился после любого количества чисел после первого паттерна, сейчас регекс пикрил
407 2400047
>>400030
Я вроде сталкивался с таким год назад - в регексе есть такая херня, которая тебе нужна (любое количество символов вплоть до символа X). Positive lookahead или как то так мб
408 2400073
>>400030
Можно задачу обозначить по другому, нужно ограничить инпут так, чтобы я мог указывать количество цифр до точки и после. После вот я указать могу, а ДО не получается
image.png28 Кб, 908x376
409 2400076
410 2400116
>>400030
Попробуй (\d{1,6})[^\.]\.(\d{0,3})

Потом с помощью знака вопроса сделаешь необязательным всё, что не обязательно. А сейчас в моём варианте дробная часть обязательна, как и точка перед ней.

Ну и границы поставь, если нужно.


> после любого количества чисел после первого паттерна


Только чисел? Тогда скорее (\d{1,6})\d
\.(\d{0,3})

>>400076
У тебя плюс жадный, сожрёт и точку.

>>400099 (Del)

> ∗?


> ∗?


Нахера?
411 2400138
>>400116
Макаба ебучая, вся разметка к чертям.

>>400124 (Del)
Но там же всего лишь \d

Хотя, наверное ты прав, у тебя вроде немного быстрее будет
412 2400178
>>400015
Ярн небось первый?
413 2400184
>>400178
Третий
414 2400193
>>399568
Вот только от нодовских бэкендеров ожидают макакинг фронта.
415 2400196
>>400193

> макакинг фронта


Ну так поформошлепает через жикару, не пропадет.
6122390376.jpg133 Кб, 584x794
416 2400223
это что даже авторы учебников считают что JS учат только петухи?
417 2400289
>>400223
Нахуй ты их так приложил?
418 2400442
Устанвоил eslint. Он мне выделил красным многие места в файле JS, ругается на какие-то переносы строк. Я нажал а фикс проблемы, ничего не произошло. Почему так?
419 2400444
>>400442

> так


потому что ты пчурмодаун, ставь вскод, там все работает изкоропки.
image.png25 Кб, 863x193
420 2400446
>>400444
Я и так в вс коде.
Всё перечёркнуто красным, но никак не фикситься.
421 2400450
>>400223
Проиграл
422 2400453
>>400446

> Всё перечёркнуто красным


ты ж каложор ебучий, УБЕРИ НННАХУЙ ЭТОТ УЕБИЩНЫЙ ВИЗУАЛЬНЫЙ ШУМ СУКА БЛЯДЬ...
423 2400454
и удали впизду еслинт ебанный
424 2400519
>>400446
Тупой дебс, написано же, поменяй конфиг плагина prettier в еслинте
425 2400525
>>400454

>и удали впизду еслинт ебанный


Проиграл с вкатунишки
426 2400528
>>400442
Потому что там в плагине prettier надо настроить символ конца строки, советую поставить любой. Либо просто в правом нижнем углу в VS code поменяй crlf На lf
427 2400597
>>400453
Дебил, который не может в питоновские компрехеншоны, что-то там про каложоров затирает, лел.
428 2400712
Господа, почему внутри статичной функции formatDate переменная this.twoInputMod становится undefined, хотя this правильно указывает объект и до вызова функции на первом скрине переменная выводится верно?
429 2400729
>>400712
потому что ты пишешь каменты по-русски и пихаешь везде этот нахуй невсравшийся визуальный шум.
430 2400744
>>400729

>визуальный шум


Ты о чём?
431 2400758
>>400712
На какой объект, наркоман?
432 2400763
>>400744

> Ты о чём?


;{
433 2400776
>>400712
Потому что статичные свойства класса работают в жс не так как в других языках.
434 2400863
Есть ли какие то модули для определения CMS при парсинге сайта?
435 2400884
>>400776

> Потому что статичные свойства класса работают в жс не так как в других языках.


А как они там работают? Там this указывает на экземпляр класса? А на какой из них?
436 2400912
>>400758
Datepicker. Там есть twoInputMod. Он доступен везде, кроме то функции. В ней он сразу скукоживается.
437 2400917
>>400863
wappalyzer он платный
438 2400930
>>400912

> Datepicker. Там есть twoInputMod


Как он присваивается? В конструкторе?
439 2400966
Сап из 2009-го. Сейчас решил переходить с jQuery на нативный JS, но возникла трабла. Есть общий js-скрипт, в котором прописаны функции для тех элементов, которых нет на текущей странице, к которой подключен js файл, но есть на других, где он нужен. Но прикол в том, что выдает ошибку из-за того, что такой элемент не найден и, соотвественно, весь код ниже тоже херится, в том же jQuery таких ошибок не возникает и там в целом похуй на то, какие элементы есть, а каких нет, работает весь код целиком. Как такое можно фиксить?
image.png57 Кб, 550x827
440 2400971
Детальнее на примере:
Выдает ошибку о несуществовании элемента с классом "info_left_msg" (он есть на этой же странице acc.php, но с другим GET-запросом "id", потому нужен), а код, который идет ниже, то есть, начиная с 108 строки, уже не работает
Кроме как переставлять местами выхода не нашел. Есть еще какие-то варианты мб?
441 2400982
>>400966
try...catch и в кэтче выводить сообщение в сосноль.
442 2400992
>>400982
Всё равно код ниже ошибки не работает
443 2400994
>>400992
Так ты селекторы оборачивай, а не то, что ты там вешаешь на них.
444 2400996
>>400994
А, да, понял, получилось, спасибо
Это единственный варик, как можно это фиксить?
445 2401001
>>400996
Нет, это временный костыль, чтобы не заморачиваться полным переписыванием каждой строчки. Сперва убираешь вызовы жиквери костылями, а потом разбираешься что не так.
446 2401052
>>400966
const el = document.getElementById("govno");
if (!el) return;
древние технологии древних...
447 2401054
>>400966

>выдает ошибку из-за того, что такой элемент не найден


Пиздишь. Ванильные методы просто null вовзращают, ничего они не выкидывают
448 2401055
>>400971
document.querySelectorAll("dsadsa").forEach(el => {...})
document.querySelector("sadsadsa")?.addEventListener
449 2401057
>>400971
И ты под переходом с jquery на ваниллу подразумеваешь замену $ на querySelector? Лучше бросай это дело и говнокодь на жикарве дальше
450 2401171
Ебать вы мне тут накидали, конечно
>>401052
Вот это мощно, конечно, но какого хуя код не может просто работать невзирая на отсуствие элемента? Не понимаю я логики js и мне тупо интересно, в какой строчке и как в jquery прописано, чтобы это работало нормально
>>401054
Я в этом посте показал, посмотри внимательно на консоль >>400971
>>401055
Как с селекторами работать я уже научился, мне нужно, чтобы код, который находится ниже строки с "ошибкой", работал, тчобы скрипт не вставал в этом месте
>>401057
Ну не только работу с селекторами, но и замену вообще всех функций по типу click, hide, each и так далее. Плюсом, уже ни в одной вакансии нет требования знания jQuery, но вот JS повсеместно, который я почти не знаю из-за того, что всегда юзал jQuery
451 2401175
>>401171

>какого хуя код не может просто работать невзирая на отсуствие элемента?


Потому что ебаного элемента нет. А ты подразумеваешь, что он есть. Соответственно, логично выкинуть ошибку.

>Я в этом посте показал, посмотри внимательно на консоль


Так тут даже не метод выкидывает ошибку, а попытка обращения к свойству у null

> тчобы скрипт не вставал в этом месте


Так ты пиши свои функции таким образом, что бы они запускались только в случае, если юзер находится на странице.
> всегда юзал jQuery
Ты за все свое время юзания, судя по твоему коду, не научился делегировать обработчики событий на родительский элемент. Чем ты вообще занимался все это время?
452 2401200
>>401171

>Не понимаю я логики js и мне тупо интересно, в какой строчке и как в jquery прописано, чтобы это работало нормально


Да никак это нормально не работало, жиквери просто молча сглатывает ошибки, а современный жс падает при малейшем пуке не туда.
453 2401201
>>400971
querySelector("hui")?.addEventListener(...)
454 2401202
>>400712
Потому что семантика статичного метола подразумевает отвязанность от конкретного экземпляра класса. Либо делай обычный метод, либо лобавляй третий аргумент, либо делай два статичных метода один для сингл второй для ту
455 2401205
>>400030
Нахуй здест регексп, дурилка? Чего вы везде суете регексп?
const firstSix = str.substring(0, 6);
const mantissaIndex = str.indexOf(".", firstSix.length);
const mantissa = mantissaIndex > -1 ? `.${str.substring(mantissaIndex)}` : "";
return `${firstSix}${mantissa}`;

А если регексп и использовать, то не для соединения, а удаления чисел которые идут после 6го числа и до точки.
456 2401207
>>398956
const selectedHandler = [firstHandler, secondHandler, thirdHandler, ...restHandlers].find(handler => handler.evaluate());
return selectedHandler?.result ?? default;
457 2401208
>>397834
Перед открытием модалки. Модлка должна быть максимально тупым компонентом, который просто знает как отобразить данные и куда направить обработанные дейсьвия пользователя
458 2401262
>>401207

> const selectedHandler = [firstHandler, secondHandler, thirdHandler, ...restHandlers].find(handler => handler.evaluate());


> return selectedHandler?.result ?? default;


А для создания хэндлеров дополнительный класс писать, лол?
459 2401268
>>401208
Спасибо!
460 2401352
>>401200

>жиквери просто молча сглатывает ошибки


Нет, не сглатывал. Просто у него под капотом создавался массив и он итерировался по этому массиву при вызове методом. Нет элементов масситва - нет итераций и нет ошибок.
>>397834
1) Ты запускаешь получение данных.
2) Открываешь модалку с прелоадером
3) При получении данных отображаешь их в модалке или отображаешь инфу об ошибке
461 2401422
>>401262
Да

class ExpressionBoundLazyEvaluator {
constructor(expressionToEvaluate, trueResult){
this.evaluate = ()=> {
if(expressionToEvaluate()) {
this.result = trueResult;
} else {
this.result = undefined;
}
}
};
}
const futureDate = Date.now() + 50000;
const evaluators = [new ExpressionBoundLazyEvaluator(() => Date.now() > futureDate, "50 seconds passed")];
462 2401424
>>401352

> Нет, не сглатывал. Просто у него под капотом создавался массив и он итерировался по этому массиву при вызове методом. Нет элементов масситва - нет итераций и нет ошибок.


Уже предлагали такое же решение, но не под капотом, а руками на нативном ЖС: >>401055
463 2401449
>>401422
И по итогу получилось как у меня (>>399244), только в сумме длиннее и на классах. И семантика всратая: вопреки названию, "evaluate" возращает не вычисленный результат, а true/false.
UPD: Лол, присмотрелся, а там даже true/false не возвращается, всегда будет undefined. Метод массива .find в любом случае ничего никогда не найдёт, в конце итоговый результат будет всегда default, заебись решение.

И почему у тебя каждый result в функцию не обёрнут? Проверки lazy, а результаты внезапно не lazy.
464 2401457
>>401449
Твой код тяжело читать, тяжело будет добавить обработку ошибок или логирование, да и в целом расширить/изменить. И в добавок ко всему он выполняет лишние итерации. Не вижу никаких плюсов, предложенное решение проигрывает даже обычному набору if блоков с return в каждом.
465 2401498
>>401457

> Твой код тяжело читать


Код, где evaluate не возвращает результат вычислений — ещё тяжелее (дезинформация хуже отсутствия информации). А ещё он не работает, потому что там даже true/false не возвращается, и .find никогда ничего не найдёт.

> И в добавок ко всему он выполняет лишние итерации


А вот тут ты абсолютно прав. Сам .find здесь намного лучше будет, чем .reduce, надо только правильно его использовать.

Вот, сделал хороший вариант:

[
[getCondition1, getResult1],
[getCondition2, getResult2],
[getCondition3, getResult3],
[getCondition4, getResult4],
].find(
([getCondition]) => getCondition()
)?.[1]() ?? getDefault();
466 2401544
>>401498
Можно лучше, если ты так классов боишься:

const [, getResult = getDefault] = [...].find(...);
return getResult();
467 2401565
Чтобы классы для процедурок писать это надо чтобы совсем жава головного мозга была.
468 2401588
>>401565

>ну тут и процедурок хватит


>ну тут других процедурок хватит


>ну зас объединим первые и вторые процедурки, написав еще одни, слишком много кода от них зависит



Поздравляю, вы успешно прошли путь до монолита. Обратного пути нет.
469 2401611
P. S.
>>401498

> Вот, сделал хороший вариант:


> ...


> )?.[1]() ?? getDefault();


А, нет, не хороший. Если нужный результат должен быть null или undefined, то вместо него будет default. Та же ошибка, что и здесь:
>>401207

> return selectedHandler?.result ?? default;



О, а вот тут уже этой ошибки нет:
>>401544

> const [, getResult = getDefault] = [...].find(...);


> return getResult();



Ещё можно так, чтоб переменные не плодить:

(
[
[getCondition1, getResult1],
[getCondition2, getResult2],
[getCondition3, getResult3],
[getCondition4, getResult4],
].find(
([getCondition]) => getCondition()
)?.[1]
??
getDefault
)();

> если ты так классов боишься


Только неуместных и излишне громоздких, да ещё и с дезинформирующей семантикой.

Если надо семантику, то можно обычными объектами. Так даже понятнее, ведь при вызове конструктора класса не видно, что означают аргументы (только если IDE подсвечивает, но мы сейчас не об этом), а с объектами видно:

(
[
{check: getCondition1, eval: getResult1},
{check: getCondition2, eval: getResult2},
{check: getCondition3, eval: getResult3},
{check: getCondition4, eval: getResult4},
].find(
({check}) => check()
//или case => case.check(), чтоб нагляднее
)?.eval
??
getDefault
)();
469 2401611
P. S.
>>401498

> Вот, сделал хороший вариант:


> ...


> )?.[1]() ?? getDefault();


А, нет, не хороший. Если нужный результат должен быть null или undefined, то вместо него будет default. Та же ошибка, что и здесь:
>>401207

> return selectedHandler?.result ?? default;



О, а вот тут уже этой ошибки нет:
>>401544

> const [, getResult = getDefault] = [...].find(...);


> return getResult();



Ещё можно так, чтоб переменные не плодить:

(
[
[getCondition1, getResult1],
[getCondition2, getResult2],
[getCondition3, getResult3],
[getCondition4, getResult4],
].find(
([getCondition]) => getCondition()
)?.[1]
??
getDefault
)();

> если ты так классов боишься


Только неуместных и излишне громоздких, да ещё и с дезинформирующей семантикой.

Если надо семантику, то можно обычными объектами. Так даже понятнее, ведь при вызове конструктора класса не видно, что означают аргументы (только если IDE подсвечивает, но мы сейчас не об этом), а с объектами видно:

(
[
{check: getCondition1, eval: getResult1},
{check: getCondition2, eval: getResult2},
{check: getCondition3, eval: getResult3},
{check: getCondition4, eval: getResult4},
].find(
({check}) => check()
//или case => case.check(), чтоб нагляднее
)?.eval
??
getDefault
)();
470 2401622
>>401611

>()().?..??


>так даже понятнее


>любое обращение к this в getCondition/Result приведет к ошибке



Чел, плес. Это код вкатуна который думает, что он всё хорошо изучил.
471 2401665
>>401588
Как будто на жабе монолиты невозможно писать. С обычным процедурным монолитом разница только в том, что ты будешь тонны интерфейссов абстрактных фабрик писать поверх.
472 2401671
>>401665
Жаба тут твоя ни при чём. На фронте уже давно перешли на тайпскрипт, который позволяет типизировать код не влияя на его производительность. Можешь хоть 10000 интерфейсов породить, на рантайме не отразится, в то время как жаба будет добавлять каждый в таблицу интерфейсов
473 2401703
>>401671

>На фронте уже давно перешли на тайпскрипт, который позволяет типизировать код не влияя на его производительность.


Казалось бы, причём здесь классы?
474 2401717
>>399891
Еще такой вопрос, а что кроме бека стоит в стейт менеджер пихать, как понять?
475 2401818
>>401717

>стейт менеджер


Что за стейт менеджер? Тебе выше уже ответили, что данные каждого типа идут в специализированный для этого стейт менеджер, от useState(this.state) до редаксов, мобиксов, формиков и подобного.
476 2401824
>>401717
Всё, что можно сохранить в переменную.
477 2401826
>>401622

> >()().?..??


Ок, если это СЛИШКОМСЛОЖНА, то можно и вариант с отдельной переменной (>>401544), он действительно проще воспринимается, тут не спорю.

> >так даже понятнее


Что понятнее чем что?
Это:
[
{
check: () => player.job === 'warrior',
eval: () => player.sword
},
{
check: () => player.job === 'magician',
eval: () => player.wand
},
{
check: () => player.job === 'assassin',
eval: () => player.hiddenBlade
},
]

чем это:
[
new ExpressionBoundLazyEvaluator(
() => player.job === 'warrior',
player.sword
),
new ExpressionBoundLazyEvaluator(
() => player.job === 'magician',
player.wand
),
new ExpressionBoundLazyEvaluator(
() => player.job === 'assassin',
player.hiddenBlade
),
]

?

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

> >любое обращение к this в getCondition/Result приведет к ошибке


С чего бы? Если функция почему-то не стрелочная, то просто будет undefined. Да и вообще, зачем там this? Чтобы что? Если всё-таки за каким-то хером надо, то можно забиндить, я не запрещаю.
И в чём принципиальная разница здесь: >>401422? По-твоему, там this внутри expressionToEvaluate будет вести себя как-то по-другому? Лол, ты серьёзно так считаешь?

> Чел, плес. Это код вкатуна который думает, что он всё хорошо изучил.


Забавно, учитывая, что в двух пунктах из трёх обосрался ты, а не я. Первым «лови вора» кричит сам вор, как говорится. Ну и мой код хотя бы работает, в отличие от >>401207 с >>401422, так что я, по крайней мере, хоть как-то изучил, в отличие от.
477 2401826
>>401622

> >()().?..??


Ок, если это СЛИШКОМСЛОЖНА, то можно и вариант с отдельной переменной (>>401544), он действительно проще воспринимается, тут не спорю.

> >так даже понятнее


Что понятнее чем что?
Это:
[
{
check: () => player.job === 'warrior',
eval: () => player.sword
},
{
check: () => player.job === 'magician',
eval: () => player.wand
},
{
check: () => player.job === 'assassin',
eval: () => player.hiddenBlade
},
]

чем это:
[
new ExpressionBoundLazyEvaluator(
() => player.job === 'warrior',
player.sword
),
new ExpressionBoundLazyEvaluator(
() => player.job === 'magician',
player.wand
),
new ExpressionBoundLazyEvaluator(
() => player.job === 'assassin',
player.hiddenBlade
),
]

?

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

> >любое обращение к this в getCondition/Result приведет к ошибке


С чего бы? Если функция почему-то не стрелочная, то просто будет undefined. Да и вообще, зачем там this? Чтобы что? Если всё-таки за каким-то хером надо, то можно забиндить, я не запрещаю.
И в чём принципиальная разница здесь: >>401422? По-твоему, там this внутри expressionToEvaluate будет вести себя как-то по-другому? Лол, ты серьёзно так считаешь?

> Чел, плес. Это код вкатуна который думает, что он всё хорошо изучил.


Забавно, учитывая, что в двух пунктах из трёх обосрался ты, а не я. Первым «лови вора» кричит сам вор, как говорится. Ну и мой код хотя бы работает, в отличие от >>401207 с >>401422, так что я, по крайней мере, хоть как-то изучил, в отличие от.
478 2401848
P. S.
>>401826

> Да, первый вариант намного понятнее


Можно ещё понятнее:
[
{
if: () => player.job === 'warrior',
get: () => player.sword
},
{
if: () => player.job === 'magician',
get: () => player.wand
},
{
if: () => player.job === 'assassin',
get: () => player.hiddenBlade
},
]
479 2402262
>>399978
А как вообще происходит взаимодействие например Реакта с сервером? К примеру у меня есть интернет магаз, мне надо чтобы списки товаров подгружались с бэка, или отфильтрованные товары. Это надо просто гет-запрос делать из компонента к базе?
480 2402270
Каким должно быть резюме и портфолио, чтобы меня хотя бы позвали на собеседование?
481 2402273
>>402270
Оно должно быть охуенным, пчел
482 2402274
>>402273
Насколько?

Вот сейчас у меня такой GitHub: https://github.com/vertically-challenged
А в резюме просто расписано, какие технологии я использовал на каждом из проектов в GitHub
483 2402347
>>402274
Где тайпскрипт, котик?
484 2402375
>>402347
Вот тут уже использовал: https://github.com/vertically-challenged/vue-chat-front-end
image.png7 Кб, 658x62
485 2402385
>>402375
Это тайпскрипт по твоему?
486 2402390
>>402385
А чем не тайпскрипт?
487 2402395
>>402385
АХАХХАХАХХ
488 2402396
пацаны а чё это так должно работать на проекте react express через прокси их связывать?
489 2402432
ПЕРЕКАТ >>2402430 (OP)
ПЕРЕКАТ >>2402430 (OP)
ПЕРЕКАТ >>2402430 (OP)
490 2402484
>>402274

> 2ch


Зашквар
491 2410280
Как вы собираетесь конкурировать с миллионом вкатышей? Есть какой-то четкий план?
carbon(1).png270 Кб, 1548x1974
492 2492398
Двачик, объясни мне зачем в тайпскрипте декораторы? Кто, когда и зачем ими пользуется? Я прямо сейчас перечитываю документацию их, и посмотрел уже два видео на ютубе, одно от авторитетного индуса, но так и не понял зачем это всё. Я же не могу через декораторы поменять класс сущности, менять ими методы или поля, а нахуя? Почему не сделать это необязательными полями в конструкторе? Приводить экземпляр одного класса к виду другого класса? А зачем, если typeof не изменяется?
Тред утонул или удален.
Это копия, сохраненная 9 ноября 2022 года.

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

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