Двач.hk не отвечает.
Вы видите копию треда, сохраненную 22 апреля 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
image.png89 Кб, 1050x1050
JSThread #184 /js/ # OP 1863168 В конец треда | Веб
Прошлый тред: >>1857542 (OP)

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

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

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

Руководство для вката: https://developer.mozilla.org/
2 1863174
>>63168 (OP)
Кто вообще до сих пор пишет без типов
Перекатывайте следую шапку тсом
# OP 3 1863176
>>63174
Все без типов пишут.
4 1863179
>>63176
Извиняюсь. Опять забыл, что вокруг одно криворукое макакобыдло.
5 1863181
>>63179
Все макакобыдло на ts сидит, как раз. Это же и есть инструмент для неосяляторов.
6 1863183
Поясните, вот бабель меняет в вуе и рякте все на старый код. А если мне это нахуй не нужно? Если мне насрать на старые браузеры? Можно отключить это все, оставив только нужное для всяких jsx-ов?
7 1863188
>>63183
Можно
8 1863189
>>63183
Ну поменяй конфиг вебпака, лол
9 1863190
>>63183

> А если мне это нахуй не нужно


Сразу на ES2020 собрался писать? Сразу процентов 70 пользователей отрезаешь
10 1863192
>>63190
Что повсеместно используемое в коде не поддерживается 70% современными браузерами, пиздабол?
11 1863205
>>63190
20-30% судя по caniuse.com
12 1863208
>>63174

>Кто вообще до сих пор пишет без типов



Да, стоило придумать язык без типов чтобы потом приделать к нему костыли с типеизацией
13 1863212
>>63208

>язык без типов


Ты долбаёб
14 1863214
>>63181
Неосиляторы сидят как раз на жс, потому что не могут в типы.
15 1863223
>>63174
Практически все. Ts хуита, не взлетел.
16 1863233
>>63208
Нет, стоило бы с яростью юношеского максимализма отрицать свои ошибки и не пытаться их исправлять.
17 1863235
Как научить верстать ПРАВИЛЬНО ?
В моих мелких проектах уровня говно-соцсети хватало кривой верстки
Под кривой вёрсткой я понимаю не-оптимальный css и уродское именование классов
18 1863238
>>63174
Как же я обожаю типизировать каждый пук в своей тудушке
19 1863240
>>63235
Используй готовые библиотеки типа material и ant, от тебя потребуется только правильно размещать уже готовые компоненты, т. е. это выбор между грид/флекс/флоат контейнерами и задача маржинов, паддингов.
20 1863243
>>63235
Очевидно что никакого общепринятого стандарта нет (кроме W3 рекомендаций, который не советует даже использовать id как селектор) и всё исходит из твоих задач и предпочтений

>не-оптимальный css


Такого практически нет

>уродское именование классов


Ну придерживайся всяких БЭМов, хуле
Из альтернатив только компонентная стилизация
21 1863244
>>63235
Я вот хуй забиваю на верстку, не для того реакт дрочил.
22 1863264
>>63244

>Я вот хуй забиваю на верстку, не для того реакт дрочил.



И че кабанчик должен теперь верстальщика дополнительно к тебе искать
23 1863271
>>63244
Надо было не дрочить, а делом заниматься.
24 1863305
>>63168 (OP)
Внезапно что-то туплю как в Ангуляре выбрать конкретный элемент в html (внутри компонента конечно же). Мне надо чтобы в случае проброса ошибки при исполнении Промиса кнопка "Submit data" становилась неактивной (disabled), в ванильном жс я бы просто намутил document.querySelector, а тут как?
25 1863307
>>63264
Кабанчику главное чтобы по дизайну совпадало более-менее. А что там стили через жопу, это извините, у меня по js полно тасок, до этого кала руки через полгода дойдут.
26 1863314
>>63305
Если в рамках формы, то создаешь FormGroup и привязываешь атрибут disabled к свойству FormGroup.invalid, для асинхронных операций, т. е. для промиса, используют асинхронные валидаторы (методы которые возвращают AsyncValidatorFn).
Либо можешь создать Observable свойство у компонента и привязать disabled к нему при помощи async pipe.
image.png968 Кб, 730x730
27 1863318
Как в реакт роутер сделать Redirect при определенном условии или через функцию, вы ебанулись чтоле нахуй? Да, есть писечка useHistory, которая делает все охуенно, и которую можно вставить куда угодно. НО У МЕНЯ БЛЯДЬ КЛАСС я не могу использовать хук. Переписать в функциональный компонент, и сделать все на хуках? Сейчас вообще классы используют? Пиздец, почему так же просто не сделали и для классов?
28 1863319
>>63318
https://reactrouter.com/web/api/withRouter

>Сейчас вообще классы используют?


Не
image.png354 Кб, 900x814
29 1863320
Сегодня с утра какую-то горячку словил, температура 38,3, валялся часа 3 в овощном состоянии под одеялом, голова болела, и снилось мне, что я превратился в HTML-тег на веб-странице.
И не знаю я, какой класс мне присвоен. Понять не могу.
А место своё искать надо - браузер уже обрабатывать начинает.
Я самый обычный DIV, как и все вокруг, вот только атрибутов своих не вижу.
И не могу себе места найти на странице, ни отступов, ни маржина, ни падинга своего не знаю.
И роюсь, роюсь непонятно где, по родительским тэгам, по комментариям, в стили разные лезу, а другие тэги на меня бычат и подгоняют, и говорят что у них z-индекс выше а я чмо какое-то нижнеслойное.
Ну, потом вроде отпустило и щас где-то 37 температура.
Такие дела.
30 1863321
>>63319
Понял, спасибо, буду разбираться
31 1863342
>>63318
>>63319
Штош, это оказалось куда проще чем я думал
32 1863344
>>63320
Лольнул немного.
33 1863397
>>63320
Я застрял в оверфлоу скролл теге и не могу из него выйти! Я прописываю себе z-index, но из-за того что я в скролле в том диве, выше не становлюсь! Помогите!
34 1863419
>>63176

>Все без типов пишут.


Чё там, Хаскель уже освоил?
35 1863420
>>63208
Чё ты не пишешь на Идрисе, раз тебе типы подавай?
36 1863426
При работе с редаксом нормально ли кидать в дочерний компонент пропсв или лучше его подключить к стору?
37 1863431
Проптайпы юзают что бы не учить тс?
38 1863434
>>63431
Прототайпы юзают.
39 1863449
>>63431
Да. Макаки так копротивляются.
40 1863464
>>63168 (OP)
Есть строчка, в консоли:

>var s = ''; for(var i=0; i<65536; i++){s += String.fromCharCode(i);} console.log(s);


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

Как отсеять говно? .trim() не очень-то помогает.
41 1863465
>>63223
>>63208
>>63181
>>63176
Блджад ну вы и дурачьки, тс намного упрощает и ускоряет писанину кода, крутой интеллисенс и автодокументация. Становитесь тс господинами, потом спасибо говорить будете
43 1863491
>>63465
IDE-даун, плиз. Код пишут головой, а не крутым интеллисенсом на костылях от мелкомягких
44 1863494
>>63491
Так что стоит вкатываться в этот ваш тс?
16060938858540.png273 Кб, 720x583
45 1863498
>>63494
Нет конечно. Хотя если ты из тех, кто любит тратить бабло заказчика на написание костылей, запрещающих потом случайно делить дату на строку, то вкатывайся
46 1863511
>>63494
Только если ты ide-даун. Все вкусные фичи давно спиздили в стандарт js, а от типов толк сомнительный.
47 1863564
У меня по qml вопрос. Проконсультирует кто?
image.png13 Кб, 840x75
48 1863565
Че он там делает?
49 1863569
>>63565
Интерпретирует
image.png781 Кб, 2000x1000
50 1863571
>>63511

>а от типов толк сомнительный.

1kvajSWEQ70qz2gfqHin9g.png28 Кб, 700x426
51 1863585
>>63571
На медиуме давно уже запруфали, что типизация полезна только для ИДЕ-дебилов. На количество багов она практически не влияет, тестами баги ловятся намного эффективнее

Только вот прикол: с одной стороны ИДЕ ускоряют рутиные операции с текстом при рефакторинге, с другой - для того, чтобы код был типизирован, надо тратить дохуя времени на описание этих типов и сигнатур функций. В итоге ТС-лалкам приходится решать ненужные задачи вместо того чтобы создавать value заказчику
52 1863590
ts ,js..coffescript
53 1863592
>>63585
Обосрался с этого пруфа уровня б. Прям и оверхед гигантский, и всех обучить надо и менторить потом. А уж людей-то как сложно найти!
54 1863603
Быстро решительно врываюсь в тред с вопросом по библиотекам:

Есть у меня данные для таблицы, я такой беру эти данные и отправляю в сорт-оф SQL-таблицу, которую потом кручу как хочу SQL-запросами (или чем-нибудь похожим). Собственно какие варианты у меня есть, кроме как писать свой велосипед? и сразу же сам иду в гугл
55 1863605
>>63592
Представь себе, вся эта еботня с типизацией не бесплатна

> А уж людей-то как сложно найти!


Что аж ставочки для тайпскриптеров повышают

Не, в плане высасывания бабла из заказчика ТС идеальная хуцпа

Куда рациональнее потратиться на одного грамотного архитектора, чем на десяток макак обмазывающихся тайпскриптом чтобы случайно не обосраться
56 1863608
Нубский вопрос. Как правильно передать значение i после прерывания цикла например на 5 раз. Вот так через X выглядит предельно не красиво:

let X = 0;
for (let i = 1; i < 11; i++){
if (//blabla
X = i;
break;
}
}
57 1863610
>>63608

В смысле некрасиво? Ты хочешь прервать цикл по условию, но не хочешь использовать if, сравнение, и break ?
58 1863612
>>63608
let X = 1
for (; X < 11; X++) {
if (...) break
}
if (X === 11) {
X = 0
}
59 1863613
>>63610

>В смысле некрасиво? Ты хочешь прервать цикл по условию, но не хочешь использовать if, сравнение, и break ?


Хочу передать значение i в момент прерывания цикла, через костыль X это выглядит неправильно как по мне.
Хочу делать правильно.
60 1863614
>>63612
Спасибо.
61 1863618
>>63605
Я хорошо представляю плюсы и минусы — все-таки два года уже на нем пишу и обратно как-то не хочется. Других переубеждать не буду, нравится людям себе в ногу стрелять, ну да и бог с ними.

А картинка просто глупая и цифры там с потолка взяты. Можно нарисовать абсолютно такую же, но в другую сторону.
62 1863619
>>63498
На пике типичный тайпскриптер?
63 1863623
Понимаю, что вопрос больше про верстку, но не могу заставить текст фейдиться где-то после слов conversation. Хочу что бы сильно длинные названия автоматом фейдились. Кто-то может подсказать пожалуйста как это сделать?
64 1863628
>>63623
Два спана
65 1863633
>>63628
Покажи пожалуйста, не понимаю.
66 1863653
>>63633
спан спан
Annotation 2020-04-29 133809.jpg126 Кб, 1112x712
67 1863654
>>63585

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



Да, вот 20 гигов не хватает чтоб типы вывести
68 1863655
>>63653
Что "спан спан"? Что в спан заворачивать? Текст? Текст транслируется из массива, там нечего в спан заварачивать по сути.
69 1863665
>>63655
.track-name сделай display: inline
70 1863670
>>63665
Добавил. Результата нет.
71 1863671
>>63623
background: linear-gradient(0.25turn, black 0%, black 70%, white 90% 100%);
72 1863672
>>63665
Может контейнеру в котором текст лежить дать - оверфлоу: хидден?
73 1863674
>>63168 (OP)
Бэк общается с фронтом при помощи longPolling, то есть бэк периодически в ответ на запрос фронта присылает json Delta в котором обозначаются совершенные изменения.
Как в Ангуляре в общем порядке "прослушать" этот json response Delta и совершить изменение в нужном компоненте, даже если в данный момент он на экране не присутствует и находится по другому url?
74 1863681
>>63674
Никак. Делай сервис-синглтон который будет инжектиться в нужный компонент и совершать в нём изменения как только этот компонент появится на экране, т. е. в ngOnInit берешь текущее значение из сервиса и делаешь необходимые изменения.
75 1863690
>>63618

>цифры там с потолка взяты



All projects for which impact was judged were >50k LOC with several collaborators working over several months. One project was Angular 2 + TypeScript, compared against a similar project written in Angular 1 with standard JavaScript. All other projects were built with React and Node, and compared against React/Node projects written in standard JavaScript. Subjective bug density, subjective relative velocity, and developer feedback were estimated, but not precisely measured. All teams contained a mix of experienced and new TypeScript developers. All members had access to more experienced mentors to assist with TypeScript onboarding.

Objective data was too noisy in the small sampling of projects to make any definitive objective judgements with a reliable error margin. On one project, native JavaScript showed a 41% lower public bug density over TypeScript. In another, the TypeScript project showed a 4% lower bug density over the comparable native JavaScript version. Obviously, the implementation (or lack) of other quality measures had a much stronger effect than TypeScript, which skewed the numbers beyond usability.


https://medium.com/javascript-scene/the-typescript-tax-132ff4cb175b
https://medium.com/javascript-scene/the-shocking-secret-about-static-types-514d39bf30a3
77 1863714
>>63619
На пике - типичная жс-макака, как раз. Оно не лезет, а она продолжает тыкать, не понимая, в чём тут дело.

>>63605
Неосилятор, плиз, твой бугурт просто смешон.

TS - это JS, который масштабируется.
Вот и весь ответ.
Нет серьёзных проектов - TS не нужен.
Хочешь всю жизнь плавать по дну на подсосе - TS не нужен.
78 1863715
>>63707
Да у меня так же. Но мне надо что бы он становился прозрачным в конце первой строки проглатывая остальной текст. А он тут весь текст втискивает
80 1863719
>>63715
Тогда два спана
81 1863723
>>63614
Это, по-твоему, "красивее"?
Ну нахуй.
Лучше уж просто let i; сделать перед циклом, и затем просто использовать i после выхода.

Но, твой первоначальный вариант - с отдельными i и x - самый правильный. Потому, что он совершенно лишён двусмысленности. А лишняя переменная - хуй с ней, ты же не на Си для микроконтроллера пишешь.

Не надо выёбываться в коде, про это ещё Дейкстра писал - хороший программист никогда не позволит себе писать "клёвый" код - он для этого слишком ответственный, как-то так.
82 1863735
>>63714

>TS - это JS, который масштабируется.


Ты там SPA масштабируешь чтоле? Советую масштабировать инфраструктуру, а для SPA достаточно структуру проекта нормальную заложить. И да, типизация для этого не нужна
83 1863738
>>63735
Диван привет
84 1863748
>>63690
Да, это и называется с потолка. Чувак взял несколько разных проектов и по каким-то своим субъективным критериям оценил. Почему у него Type Safety это +0.2, а Typing Overhead -3? Да хуй его знает вообще. Прост.

Интересно, что вместо TS он предлагает TDD, которое, видимо, бесплатно, вообще никакого оверхеда не несет и менторинга с обучением не требует. Ну ок.
85 1863769
>>63735
Понимание необходимости статической типизации - это то, что отличает программиста от макаки. Не важно, жс это или ещё что.

Даже питонобляди пришли к описанию типов в коде, лол.
Не прошло и 25 лет.
Причём, до этого усирались, что типизация не нужна, не хуже жс-макак.
86 1863785
>>63769
Нужна не статическая типизация, а понятные интерфейсы, простые компоненты и вообще SOLID

Всё это делается на самом обычном JS

Тайпчекалка сама по себе не родит тебе хороший код

>>63748

> вместо TS он предлагает TDD


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

>а понятные интерфейсы, простые компоненты и вообще SOLID



На js всего этого нет, манюнь. JS тебя не остановит когда ты передашь в метод/функцию объект неподходящего типа. JS за тебя не напишет необходимые для реализации методы интерфейса/абстрактного класса.
88 1863818
>>63798

>На js всего этого нет


Щито-с. Отсутствие в языке синтаксической конструкции interface { } не значит, что при проектировании ПО ты ими не сможешь пользоваться

Пиши ясный код, документируй в комментах и всё будет в ажуре без всяких тайпчекалок
89 1863821
>>63818

>Пиши ясный код



Твой ясный код не для всех ясный
90 1863823
>>63798

> На js всего этого нет, манюнь. JS тебя не остановит когда ты передашь в метод/функцию объект неподходящего типа. JS за тебя не напишет необходимые для реализации методы интерфейса/абстрактного класса.


Для этого есть юниты. Ты их все равно обязан писать, тс не защитит от говна в рантайме или кода набитого "any".
91 1863829
>>63821
Имена переменных и прочего делай чтобы можно было понять зачем это надо без гадания на потрохах, это раз

Оформляй код, это два

Вот и все секреты
92 1863841
>>63785

>TDD так или иначе нужно, особенно если ты там что-то рефакторишь.


Вот это вообще неправда. Часто и сильно рефакторю большой проект на десятки тысяч LOC. Обычно после внесения изменений и исправления ошибок типов все работает сразу как надо. Вот прям с первого раза. На чистом JS обычно еще час сидишь и крутишь разные корнер-кейсы. А если у тебя тесты, то еще час их дописываешь и переписываешь. И даже тогда нет уверенности что ты ничего не сломал.

Алсо, за всю свою карьеру я не видел ни одного фронтового проекта который был бы вменяемо покрыт тестами, и уж тем более написан по TDD. Я не про либы сейчас, а про приложения, если что.
93 1863848
>>63829

>Имена переменных и прочего делай чтобы можно было понять зачем это надо



Лол, ты еще комментам веришь и именам переменных
94 1863861
В ванильном жс заделал innerHTML для элемента в таком духе:

innerHTMLBlock = `
${firstPart}<div>${secondPart}</div><a>Process text</a>
`

Мне теперь надо повесить на элемент <a> хендлер onclick который будет производить некие манипуляции с текстом до этого. Как его выбрать-то?.. querySelector тут не поможет а поставить какой-то айдишник и найти его уже после добавления на страницу не могу - таких элементов, как я привел, будет много на странице
95 1863865
>>63861

>querySelector тут не поможет


Чому?
96 1863866
>>63848
Говнокод, в котором имена переменных не соответствуют их смыслу, никакими тайпчекалками уже не спасешь
97 1863869
>>63865
У меня ж innerHTMLBlock это обычный текст
98 1863872
>>63869
И что дальше? Какое это отношение к querySelectorу имеет?
99 1863877
>>63866

Только глубинный смысл переменной будет известен только тебе, следующий гребец охуеет читать твою писанину в каментах
100 1863881
>>63866

>имена переменных не соответствуют их смыслу



Пора назад в будущее с этими m_bPeremennaya
101 1863891
>>63877
>>63881
Вы когда свои interface { } делаете тоже называете методы абы как, что потом хуй проссыш какой в них смысл? Ну бля тут уже медицина бессильна

> m_bPeremennaya


Вот это кстате типизация головного мозга, и кстате тоже от MS эта практика
102 1863909
>>63891

>хуй проссыш какой в них смысл?



Че за фиксация на смысле хуисле, ты вобще программы писал сложнее тудушки, после сотни переменных уже реально поебать че там за смысл, лишь бы IDE подсказала че там у объекта есть
103 1863916
>>63909

> фиксация на смысле хуисле


Представь себе, программы должны читаться почти что как обычный текст. Бессмысленная белиберда это write-only неподдерживаемый код

> сотни переменных


Если у тебя всё это в одной куче, то пизда проекту. Рефактори, рефактори, вилкой блядь

> лишь бы IDE подсказала че там у объекта есть


Какие же вы IDE-дауны совсем дауны. Раньше пасаны хуячили в VIM+ctags и ниче, нормально было
104 1863917
>>63916

>программы должны читаться почти что как обычный текст.



Чувак, когда тебе приходит JSON с лютейшей domain specific хуйней типа сорта инвойсов на говно с 40 полями, то вникать в этот пиздец просто неохота
105 1863920
>>63916

>Если у тебя всё это в одной куче, то пизда проекту.



Если у тебя это в 60 файлов, то пизда проекту
106 1863924
Как оперативно менять сокрытие элемента при нажатии на кнопку? Поясню:

Есть линк при нажатии на который некий элемент на странице должен быть скрыт (display: none) если он в данный момент показывается и наоборот, если он сейчас скрыт то при нажатии на ту же кнопку он должен показаться (display: block). Конечно я могу в хендлере просто проверять if (e.currentTarget.style.display === 'none') но смотрится как-то неочень, есть какой-то более красивый способ решить эту проблему?

я говорю про обычный ES6 жс если че
107 1863926
>>63924

> есть какой-то более красивый способ решить эту проблему?



делай отдельный CSS стиль типа hidden, и потом ставь убирай этот стиль
108 1863927
>>63924
model prop > data attr > classList
109 1863929
>>63917

> JSON с лютейшей domain specific хуйней


Заверни это в модель, задокументируй все поля в классе модели, держи код с бизнес-логикой поближе к данным

Тоже мне проблема

>>63920
Если не раскиданы по структуре проекта, то скорее всего да
110 1863942
>>63585
Могу просмотреть все поля с описанием + за 2 секунды перейти в доку, если надо будет. И не страдать в рантайме, гугля что же там очередной фреймворк возвращает в очередной версии.
JS прекрасен для скриптов, в остальном делать меня грустить.
111 1863943
>>63942

>JS прекрасен для скриптов


Да и для скриптов он прекрасен только для тех, кто слаще морковки ничего не едал.

Не, я помню, что я в JS-треде, но, скрипты лучше писать на чём-то другом.
112 1863949
>>63943
На Perl
113 1863954
>>63608
Используйте var долбоебы.
114 1863956
Чем лучше обрабатывать тс бабелем или тс лоадером?
115 1863958
>>63929

> задокументируй все поля в классе модели



И чем это поможет когда поле под номером 45 из-за опечатки обмякнет на продакшине
Annotation 2020-05-20 162442.jpg21 Кб, 459x191
116 1863960
>>63929

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



У меня от этого MVC сдох
117 1863961
На жсе можно научиться грамотно погроммировать ? Я понимаю, что есть миллиард блогов с бестпрактисами, но это как зернышки собирать. У меня жс первый язык, тыкаю реакт, и чувствую недостаток опыта построения приложений в целом. Как строить архитектуру, с чего начинать, как все раскладывать по полочкам, вообще нихуя не понятно. Может есть книги годные какие то, или самому до всего додумываться ? Все крутые книги в основном по джаве или плюсам.
118 1863962
>>63961

Денчик тоже не знает как делать чтото сложнее тудушки, не парься. В реакте так и не решили в какой из 5ти файлов надо ложить бизнес логику.
119 1863968
>>63961
Тот же этап, та же проблема. Решил просто пилить своё приложение, и по мере его разрастания начинаю понимать получше, что и куда пихать. Тоже хотелось бы что-то почитать на эту тему архитектуры
120 1863969
>>63968
>>63961
Ах ну да, возможно просто нужно искать похожие на твоё предстоящее поделие репозитории, и смотреть что там как устроено у людей
121 1863971
>>63494
Если ты джун. Сейчас дохуя больших компаний дрочат на типизацию и либо пишут на ТС, либо переводят с Флоу на ТС.
122 1864006
>>63956
Бабель не компилирует ts, он просто выкидывает все объявления типов. Это быстрее, но, проверка типов не выполняется.
123 1864009
>>63785

>Тайпчекалка сама по себе не родит тебе хороший код


Во первых, иногда и родит, именно типизация, сама по себе.
Во вторых, она ставит мозги на место, и ты даже на динамико-дрисне начнёшь писать хороший код.
124 1864022
нихуя не пойму в webpack написано точка входа
entry: './src/index.ts',
когда переименовываю в index.ts нихуя не работают модули определяются как регулярные выражения, если делаю index.tsx и в вебпаке entry: './src/index.tsx', то все работает че за нахуй?
125 1864060
Блять, почему на списке с числами вот такой подход его сортирует:

data = [1,6,2,9,7,0]
data.sort( (a,b) => a - b )

А вот такой нихрена:
data.sort( (a,b) => a > b )
126 1864064
>>63818
В итоге тебе эту документацию и комментарии нужно читать тем чаще, чем больше твой код. Или дай угадаю, их нужно не читать, а зубрить так чтобы от зубов отскакивало? Зачем всё это, я опишу всё типами, а ide за меня запомнит и не даст ошибиться.
127 1864067
>>63823
ТС не заменяет юнит тесты, а дополняет их. И он не должен защищать в рантайме, это статическая типизация, она делает всё возможное чтобы а рантайме ошибок было меньше.
128 1864071
switch/case нельзя запилить для проверки неравенств?

Типо:

switch (score) {
case 7< score < 10:
console.log('good');
case 5< score <= 7:
console.log('good');
}
129 1864074
>>64060
Потому что калббк метода сорт должен возвращать лиьо отрицательное число, либо 0, либо единицу.
130 1864078
>>64071
попробуй switch (true)
131 1864079
>>64071
Кек, потестил в жс неравенства. Как всегда был "приятно" удивлен:

const score = 35;
50 < score <= 80; // true !
132 1864082
>>64079
тебе в питон тред с такими запросами
133 1864083
>>64071
Нет, пиши хелпер функцию inRange(min, max, value, handler). С тедрс вида
if (value >= min && value <= max) return handler();
return "Not in range";
134 1864089
>>64082
Смогешь объяснить почему 50 < score <= 80 выдает true? Я кстати смогу. Но отсюда следует другой вопрос: Смогешь объяснить нахуя он выдает true?
135 1864090
>>64071
Ты наверное хочешь массив и цикл с ифом.
136 1864091
>>64079

>50 < 35 <= 80



50 < 35 = false

false <= 80 = true
137 1864094
>>64089
Ты это... не задавай таких вот странных вопросов. Просто выучи жс. Тут все просто. Расслабься, расслабь попку и прими жс целиком в себя, тебе понравится
Istantanea schermo 2020-11-24 (00.27.43).png124 Кб, 1803x502
138 1864103
>>64094
Это не только в жс так.
139 1864136
>>64103
>>64094
слабая типизация
140 1864140
Блядь, в чем может быть проблема

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

Я прописал console.log в том месте, где получаются данные, этот лог выводится в консоли только один раз, либо при каждом нажатии на страницу, т.е. когда данные реально обновляются.

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

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

Почему консолька тригерится 2-3 раза у компонента, который рендерится, при том что сам рендер происходит только после получения этих самых данных, которые приходят ровно один раз?
142 1864147
>>64079
Operator '<=' cannot be applied to types 'boolean' and 'number'.ts(2365)
143 1864154
>>64147
ts - защита от дурака, а если ты не дурак, то и защита не нужна
144 1864158
>>64154

На атомной станции одни только умные работают
145 1864162
>>64154

>ts - защита от дурака



Манюня, ты даже не представляешь, как ты прав, лол.
В проекте на TS количество дураков стремится к нулю.
146 1864168
>>63960
К чему твой пикрил?
147 1864173
>>63585
Не только. На статике даже чтобы hello world написать нужно 10 строк лишнего кода написать. А уж если что то сложнее, то ващпе песдъец.
148 1864175
>>63960
Это MVC был старый и больной, от этого он и сдох.

AngularJS и Angular - это 2 очень разных ангуляра
149 1864176
>>64173
Ай, не пизди.
Во всяком случае, не на TS.
Там можно очень гибко настраивать уровень, на котором компилятор будет ебать тебе мозг.
Плюс - идеальная интеграция с JS - можно разные модули писать на JS или на TS, в зависимости от.
150 1864177
>>64175
бесит что херочка увидела у меня в резюме Ангуляр 1 и пишет зовет на собес, где нужен Ангуляр 2, а я-то знаю что интервью на ангуляр 2 не пройду
151 1864178
>>64145
Спасибо, но все равно нихуя не понятно
152 1864179
>>64140
Чувак, местные телепаты сейчас в отпуске.

Вот эту вот вещь - рендерится после того, как к нему придут данные - можно очень по разному себе представлять.
Подозреваю, что ты делаешь асинхронную операцию там, где её делать нельзя. В реакте таких мест много, тут уже писали об этом, лол.
153 1864181
>>63473
Это регексп для теста, а мне надо было для реплейса.
Впрочем, уже запилил: https://jsfiddle.net/0z7uko4r/
54621 чаров. Вроде копируются и вставляются норм, значит отпечатываются норм и в консоли, и на странице.
Только как-то криво оно у меня чёт, некоторые буквы вверх едут, блядь.
У вас нормально строчка отображается?
1601235894228.jpg122 Кб, 735x754
154 1864210
155 1864215
>>64181

Где там олимпиадник о-нотация задрот, ну сколько там будет сложность такого регекспа
156 1864219
234234.jpg19 Кб, 990x244
157 1864222
Как проще и лучше всего сделать такое? Чтобы в контейнере первый элемент прижимался к левой границе, а второй и третий прижились бы к правой.

Единственно что придумал - обернуть 2 и 3 и контейнеру задать flex - space-between. Но это лишняя обёртка.
158 1864233
>>64179
Да я понимаю, я бы показал код, но мне стыдно
Я понимаю в каком примерно месте у меня там какой-то пиздец происходит, но я сначала перепишу всё на редухсе, потом поебусь, если не пройдет.
image.png32 Кб, 868x520
159 1864234
Аноны, почему forEach не выполнятся, в переменную коллекция поступает, проверял.
160 1864237
>>64234
А метод ремув у нод имеется?
161 1864238
>>64233

>перепишу всё на редухсе


Ну, то-есть я правильно предположил, что ты прямо в компоненте выполняешь асинхронную операцию.
Скажи, а это классовый или функциональный компонент?
162 1864240
163 1864241
>>64238
Асинхронная операция выполняется в компоненте обёртке, и пока ответ не придет, висит лоадер. Оба компонента функциональные
164 1864242
>>64237
Да я обосрался сам, получал пустую коллекцию.
165 1864250
>>64238
Через useEffect, я полагаю?
Вот это читни, например:
https://www.robinwieruch.de/react-hooks-fetch-data
Можно ещё погуглить подобного.
166 1864277
>>64241
Не проще ее засунуть в action ?
167 1864279
Где обычно пишут интерфейсы? В компоненте или отдельно выносят?
168 1864282
>>64279
В компоненте. Главное не лепить всё в один компонент, а разбивать на сервисы, а то ты сейчас насоздаешь ApiResponse'ов в компонентах и потом скажешь, что на дваче сказали так делать.
169 1864298
Через консоль браузера можно изменять страницу?
170 1864306
>>64298
ага
171 1864315
>>64178
Чего непонятно-то? Четко же написано что в StrictMode рендер два раза вызывается.
172 1864316
>>64222

>Но это лишняя обёртка


О нет, только не это.
173 1864317
>>64222
div.parent {
display:flex;
}
div.parent:first-child {
align-self: flex-start;
}

div.parent:not(:first-child) {
align-self: flex-end;
}
174 1864318
Ебал я в очко ваш тайпскрипт это что бы написать обычную функцию нужно столько нахуй нагородить, даже если она делает банальные вещи, это че такой вид извращений?
175 1864330
>>64306
Спасибо
176 1864332
>>64318
Это Java/C# головного мозга.
177 1864337
>>64318
«Столько всего» это описать интерфейс аргументов что ли?
178 1864338
>>64154
Источник багов в первую очередь.
image.png886 Кб, 1241x458
179 1864344
>>64318
Ммм, жсер знакомится с погромированием. Даже у питонистов средний IQ и то поболее будет
180 1864351
>>64344
Причем тут питонисты? Найс манявры пошли
181 1864354
>>64351
В основном именно у жсеров и пистонистов явно отслаивается кора головного мозга. Они до последнего верешат и не желают изучать какие-то новые технологии помимо тех что присутствуют в их уютном манястеке
182 1864360
>>64354
Пруфы со статистикой.
183 1864365
есть объект const x = { y: 1, z: 1 }, если пишу eslint --fix, то он переносит каждое поле на новую строку. Какое правило дает писать объекты в одну строку, если макс длину строки не превышают?
184 1864367
>>64360
Какие пруфы?
Два языка с самым низким порогом вхождения.
Вот и входит кто угодно, а потом ноют, что им писю прищемили.
185 1864380
>>64367
Дожили, уже хуями питон, а не пых кроють...
image.png66 Кб, 1913x907
186 1864385
Анон, где какой поправить конфиг что бы при нажатии на "открыть в редакторе" открывало VSCode?
187 1864387
>>64367
Для работы с дом обязательно надо тянуть ооп помойку, мда дожили, походу в вэб покатились даже «погромисты» которым пнули под жопу?
189 1864397
>>64387

> тянуть ооп помойку


ООП это просто концепция проектирования ПО. Её можно применять хоть на ассемблере, конечно это будет сложнее ввиду отсутствия подходящих языковых конструкций, но тем не менее это будет ООП

мимо
190 1864401
>>64387
В современном фронтенде "работы с дом" практически нет.
Если ты только не либу пишешь.
Реакт и т.п. - это не "работа с дом".
191 1864418
>>64392
я думал нужно конфиги vue править
192 1864421
>>64318
Ничего, становиться человеком всегда сложно, сычушь. Моим первым языком был JS, потом начал осваивать C# и ощущения были примерно такими же как у тебя, но потом я понял, что иначе код писать просто нельзя. Типизация и ООП это элегантность, порядок, культура и воспитанность программирования. Через некоторое время сам увидишь как твой код становится более структурированным, понятным и удобным для расширения/модификации.
193 1864422
>>64401
В Pornhub половина фронта написана на ванильном es6
194 1864424
>>64418
Когда два числа нужно сложить ты конфиг для сложения чисел будешь искать?
195 1864425
>>64387
Если писать на ангуляре, то непосредственной работы с домом не будет, будет только божественные ООП конструкции.
196 1864430
>>64424
По ссылке что ты мне скинул вообще не то что нужно.
197 1864438
>>64430
А что тебе нужно и как правка конфигов поможет?
198 1864467
>>64367
Как из этого следует "не желают изучать какие-то новые технологии помимо тех что присутствуют в их уютном манястеке"?
Технологии во фронтенде постоянно меняются и по-твоему никто ничего нового не учит каждые несколько лет?
Или взять например rust, там полно вкатывальщиков из питона и жс, должно быть от того, что не хотят учить новое, ага.
199 1864469
>>64467

>Или взять например rust, там полно вкатывальщиков из питона и жс


Думаю, они и не против ts
мимо
200 1864471
>>64397
Все, выключай, у меня хуй стал
201 1864483
Что предпочтительно юзать интерфейсы или тайпы?
image.png338 Кб, 1200x680
202 1864484
Сап, двач. Какие самые лучше технологии есть для spa? Ну например мне нужен фронтовый раутинг, обычный раутинг(для api).

Правильно ли я понимаю что по-хорошему это должны быть 2 разных приложения? Ну, например, альтернативой SPA'хе должен быть мобильный клиент или там электрон клиент.

А что вы думаете про Single-SPA? Хорошая штука, или какая-то гачимучи хуйня? Мне почему-то кажется, что немного гачимучи хуйня. Реклама говорит что можете сделать каждый отдельный модуль на своём фреймворке, но нахуя это надо?
203 1864490
>>64387
TS != OOP

TS = JS на стероидах.
JS - не ООП, а "объектный" язык. С сильнейшей примесью FP.
Вообще, JS очень похож на Scheme с сишным синтаксисом.

Также - ООП - очень простая и интуитивно понятная парадигма.
В отличие от FP, например.
И то, что в ES6 прикрутили "классы" - это, как раз, реверанс в сторону тех, кто не очень умеет в программирование, и хочет простые и понятные модели написания кода.
204 1864492
>>64430
Хуй знает, что там по ссылке.
Но, тебе надо настроить редактор по-умолчанию, мне кажется.
Какой там url для открытия редактора, в Vue CLI?
205 1864493
>>64483

> тайпы


Тейпы, дон.

Интерфейсы, конечно. Это общий подход, не только TS.
207 1864498
>>64490
Классы хорошо подходят для описания интерфейсов. Как только на жс начали рисовать полноценный фронт, а не обработчики 1.5 кнопок, их добавление было очевидным и ожидаемым.
208 1864500
>>64367

А почему низкий порог вхождения - это плохо?
Хорошо это когда easy to learn, hard to master. Ну и JS примерно такой и есть, да.

Тут скорее джависты которые привыкли что у них ТИПЫ и каждый файл это класс, и они хотят такую же хуйню городить. И им для этого TS сделали и дали ES6 классы, чтоб не ныли.

Да, есть не ООП языки. Да, мы существуем.

>>64490

TS это гейское говно для аутистов, никогда его не любил. Вместо того чтобы выучить язык, почитать YDKJS эти аутисты хотят чтобы наш язык был похож на их язык, потому что у них в сишках this другое значит. Как же бесят, блять.
209 1864502
>>64498

> Классы хорошо подходят для описания интерфейсов



Нет. Не подходят. Посмотри как выглядят компоненты в фреймворках.
210 1864503
>>64500
Истинное Кеевское ООП - это late binding, dynamic typing и message passing. Так что js - это и есть ООП язык, а джава и плюсы - это извращенная ооп концепция.
211 1864505
>>64500

>наш язык


Не смей шкварить жс
Он не "твой" язык. Такие как ты и формируют уебищное представление о языке и коммьюнити что на нем пишет
image.png37 Кб, 603x414
212 1864506
>>64502
Смотрю
213 1864507
>>64503
Ну, типизация в TS весьма либеральная и не сильно обязывающая.
Это, в конце-концов, всего-лишь надстройка над динамическим жс.

Просто программирование с типами - это другое программирование, и ему надо учиться, вкатиться на дурачка - не прокатывает.
Но, после того, как научился, ты становишься гораздо более лучшим программистом. При этом без типов ты тоже начинаешь писать лучше.
214 1864509
>>64498

>Классы хорошо подходят для описания интерфейсов.


Вся суть жс-программиста в этой фразе, лол.

Для описания интерфейсов хорошо подходят внезапно интефейсы, а не классы.
Более того, классы вообще не нужны в JS/TS. Но, до понимания этого надо дорасти.
215 1864513
>>64490

>С сильнейшей примесью FP


В каком месте? Лямбды даже в жабе есть
TS добавляет какую-никакаю иммутабельность, можно прикрутить паттерн матчинг.
216 1864518
>>64503
Не, не правда. Как раз Кеевского смолтолка у JS нет. Всё не есть объект, примитивные типы это не объекты. Функции это функции а не message passing. Про наличие метаклассов как раз говорить ничего не буду. Если хочешь кеевский ООП, смотри руби. Но руби мёртв. А знаешь почему? Потому что говно это всё.
Университетские учёные не пишут хороший продакшин код. И его красивая концепция не прижилась. Кей вообще хоть год жизни покодил на галере, или сразу после вуза в рисёрч пошёл?

>>64505
Океей

>>64506
Хороший пример, ES6 сахар для старого доброго module.exports. 10 стратегий из 10.
217 1864519
>>64222

margin-left: auto сделай у синего
218 1864521
>>64513

>В каком месте?


В причинном, лол.

Жс поощряет функциональные подходы к программированию.
Посмотри на Реакт, например.
Более того - жс расцвёл именно с приходом моды на функциональщину сколько-то лет назад.
219 1864526
>>64518

>ES6 сахар


Это все TS, довен
220 1864534
>>64526
Вижу что ангулярокомпонент, но export class есть в ES6.
221 1864537
>>64521
Денчик, ты?
Не реактивный и тормозной, в сорцах наверное ООП и императивщина. Это неважно, поинт в том что ts не принуждает к конкретной парадигме, к тому же, никто не запрещает комбинировать два подхода. А вот фреймворк принуждает, поэтому имеем заблуждения насчёт TS/JS
222 1864538
>>64518
Примитивы - это синглтон объекты. При желании ты можешь создать собственный класс примитивов - инстансы которого будут в единственном экземпляре на каждую комбинацию аргументов при конструировнаии. Низкоуровневая реализация примитивов тебя вообще ебать не должна, но даже если хочешь доебаться до нее - под капотом жс движков примитивы это тоже объекты - строки так вообще целые деревья, особенно когда ты их часто слайсишь.
Никаких просто функций нет. Вызов функции это отправка сообщения apply объекту. Как и все остальные сообщения get, set -читай спеку на предмет внутренних слотов. Именно отправкой сообщений дергаются слоты при приведении типов, все перехватывается пробшенными символами, или оборачиванием в прокси.
223 1864558
>>64537

>Не реактивный и тормозной


Вообще, это мои слова, лол.
Это я тут топил за Vue и поносил Реакт.
Что не отменят того, что в современном реакте сплошное ехал лямбда через лямбду.
224 1864567
>>64538

А можно 10.times(i => console.log(i)); ?

> строки так вообще целые деревья



Там строки очень гачимучно устроенно. Строка это не совсем примитив, там есть именно объект строка new String(), и там кастинг делается.
Поэтому можно "kek".charAt(1), и тебе 'e' вернет.

А циферки вроде не объекты вообще.

> Вызов функции это отправка сообщения apply объекту.



Убедил. Но так-то этот подход под капотом, и пользоваться им никто не заставляет и никто на нём особо не пишет. А я как раз и топлю за свободу в использовании подхода.
225 1864572
>>64567

>10.times(...)


Явственно запахло смузи и коворкингами.
226 1864581
>>64558

>ехал лямбда через лямбду.



Ехал рендер через рендер, так они же 2 рендера делают специально чтоб жизнь маслом не казалась
228 1864584
>>64582

Бля, ну ладно, убедил...
firefox2020-11-2416-22-45.png2 Кб, 563x93
229 1864592
>>64572

>Явственно запахло смузи и коворкингами.

230 1864611
>>64592
[...Array(3).keys()].reverse() забыл
231 1864620
>>64611
В чём космический эффект?
232 1864629
>>64492

>Какой там url для открытия редактора, в Vue CLI?


Без понятия, самому интересно
233 1864630
>>64611

>.reverse()



а если надо год в середине и день в конце
234 1864636
>>64611
Ну чтоб [2, 1, 0] не писать, а то чёт скучно

>>64630

>год в середине



Ты на кефире делаешь, или на греческом йогурте?
235 1864637
236 1864710
Общий тренд у реакта такой? -> Всегда использовать Redux и делать всё на hooks? На всё другое не отвлекаться и забить хуй? Т.е. как без хуков и редакса все делать я как раз знаю, а наоборот еще нет
237 1864713
>>64710
Всегда использовать Ass и делать всё на Dick
238 1864715
>>64713
Понял, спасибо!
239 1864728
>>64710

Редакс не нужен когда есть контекст
240 1864730
>>64629
Так посмотри, лол.
Наведи курсор на ссылку, и посмотри. Если там онклик, то в код страницы загляни.
241 1864737
>>64728
Кроме всего прочего, девтулзы для контекста сделали уже?
242 1864746
>>64728
А с повторными рендерами ебаться не придется?
Давай ебани ченить в духе правильной архитектуры
243 1864756
>>64746

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



Это не к реакту, они сами не знают че делают, то у них классы, то HOC, то хуки, то редакс, то контекст, то иммутабельный редакс, то не иммутабельный редакс тулбокс
244 1864807
>>64728
Рекадс не нужен в принципе.
Годами юзаю аполло клиент, полёт нормальный.
245 1864810
>>64756
Король просто голый.
Классика жанра.
246 1864827
>>64746
Модалконеосилятор, опять ты?
247 1864829
>>64807
Так они для разных целей нужны, мягко говоря. Редакс, конечно, тоже можно использовать как глобальный кеш запросов, но он с этим не очень-то справляется.
248 1864872
>>64592
Пацаны, я новенький во всем это жс-движе, как мне стать таким же крутым, который будет рубить по 300-400к в месяц и будет ссать на всех этих жава и с++ чуханов?
249 1864895
Вкатываюсь в vue, подскажите хороший плагин для VSCode. Поставил Vetur но нихера не работает автокомплит.
250 1864900
>>64895

>Поставил Vetur но нихера не работает автокомплит


Вопросы снят.
251 1864902
>>64900
Расскажи мне, починилось?
Когда я последний раз (летом) пробовал vue в vs code просто нихуяшечки не работало, никакого интеллисенса. Писал на классах с декораторами
252 1864910
>>64895
>>64902
Купите idea/webstorm в магазине торрентов.
Там всё довольно неплохо, в том числе и с vue+ts.
Не говоря уже обо всём остальном.
253 1864918
>>64902
На классах в Vue мне не нравится.
Я это воспринимаю, как ненужное усложнение на пустом месте.
Нет, я умею и в ооп и в тс, и зарабатываю на жизнь тем, что пишу на джаве

Они, кстати, долго пугали, что уберут классовые компоненты в vue-3, но, не убрали, в итоге, видимо, есть любители.
254 1864922
Кстати, о Vue vs React:

Реактоёбы, можете привести пример того, что (красиво) делается на React, но, трудно или невозможно нормально сделать на Vue?

Подразумевается, что некоторое понимание Vue у вас есть, и не на уровне каунтера, он там просто левой ногой делается.
255 1864927
>>64922

>трудно или невозможно нормально сделать на Vue?



Хуй знает, может эти плагины для браузера для реакта редакса которые пропы и стейт показывают
256 1864933
>>64922

>невозможно нормально сделать на Vue?



React is in many ways already solving tomorrows problems. I don't see that with Vue.

Async scheduling for instance, which React contemplates currently with Fiber to finally breach native performance. It seems to be the only one that has an actual story for renderers, React-native being one of many. Seeing things like react-blessed being compatible with generic react controls like react-motion is mindblowing. It's an eco system that's becoming self sufficient. That has led to platform vendors like Microsoft picking up React to drive their own extension eco systems as well as cross platform strategies. Reacts reconciler has just been released stand-alone, everyone can now write custom renderers pointing just about anywhere. Then there's the quest to find a sane way to deal with styles, or animations, state, routes, ... in so many cases you'll find that the React eco system is a catalyst for innovation.

Vue itself is internally modelled after React. VueX after Redux. Nuxt after Next. Most frameworks today base on the ideas and concepts that made React what it is. And if you look at the usage stats it kind of puts things into perspective, there's one that leads, there are many that follow.

As for a more direct comparison, React is leaner than Vue (api surface) and thereby easy to learn, it has less magic, doesn't introduce too many foreign concepts or arbitrary constructs. I find that i build faster with it, compose faster. The downside is, and that's probably the main reason some people prefer Vue, React is not opinionated and while it has settled in some areas (state, routers, ...), others are the wild west (styles), like a petri-dish in which all kinds of experiments develop. On the other hand that's also its biggest strength.
257 1864938
>>64922
Можно мобильное приложение написать и даже переиспольовать часть кода с вебом — react-native живой, популярный и довольно востребован на рынке. А vue-native дохлый совсем.
258 1864943
>>64902

>Расскажи мне, починилось?


Я по незнанию проебался, оказалось что автокомплит причем весьма посредственный работает только внутри тегов <template>, <script> и <style>.
За остальное не скажу ибо еще не знаю всего функционала.

>>64910

>idea/webstorm


Мне очень понравился VSCode, после саблайма это как вставить хуй в вагину женщины после месяцев тыканья в вонючие бунгала мужиков.
259 1864944
>>64933

> it has less magic,



один useEffect чего стоит и 2 вызова render в dev
260 1864948
>>64938
Это ты еще webstorm не пробовал
261 1864951
>>64944

>один useEffect чего стоит


Где в нем магия? Он делает ровно то что ты напишешь в функции и ровно тогда, когда напишешь.

>2 вызова render в dev


В StrictMode. Который, кстати, надо специально включить.
262 1864953
>>64943

> Мне очень понравился VSCode, после саблайма это как вставить хуй в вагину женщины после месяцев тыканья в вонючие бунгала мужиков.



Неиронично неистово двачую. Ходил в перманентной эйфории когда пересел на него с Notepad++ и немножко почитал юзергайды.
263 1864956
Посоны, кто пробовал поднять кухню для kaios?
image.png88 Кб, 623x205
264 1864967
Какие подводные камни у пикрила?
Переделано из этого ответа:
https://stackoverflow.com/a/61598220
Но там все излишне усложнено, или не излишне?
265 1864969
>>64967

> Promise



> 2020

266 1864975
>>64967
Ух, ну и всратый стиль кода у тебя, тяжело читать.

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

Вообще, зачем тебе выебоны с React.lazy? Может с туду листом разберешься для начала?
267 1864991
>>64933

>React <...> easy to learn, it has less magic, doesn't introduce too many foreign concepts or arbitrary constructs.


Бля, вот это реально хуцпа уже.

Я, в принципе, понимаю, что они хотят сказать.
И даже в чем-то согласен.
Только формулировать это надо как-то иначе, всё-таки.

>>64948
В смысле? Что ты имеешь в виду?
268 1864993
>>64943
>>64953
После перехода на идею, вы поймёте, что женщина ваша была резиновая.
269 1864997
>>64975

>Как минимум странным выглядит перезаписывание константы.


Это был тест на внимательность, ты прошел его, в отличии от этого анона >>64969

> Алсо, ты понимаешь что это не обновит стейт и не вызовет ререндер?


Я проверял же, все ререндерится. Почему ты думаешь, что не должно?
270 1865001
>>64993
Лучше худенькая резиновая Дуся, чем окабаневшая от жавадиеты баба Зина
271 1865010
>>64997

> это не я ошибся, это тест на внимательность


Иди сам со своим говном ебись, человек-училка
272 1865024
>>64969

>> Promise


>> 2020


Ещё один школоло, не понявший сути промисов, но очень любящий быть стильным и модным.
273 1865026
>>65010
Чего ты так взъелся? Кто тебе в тапки нассал?
Я ошибся и заметил это сразу после отправки поста, но исправлять не стал, ведь вопрос совсем не про это был.
274 1865038
>>64991
Про вебшторм это сюда было >>64943
275 1865047
В каком смысле

> inputVal is not defined


если она обьявлена в data. Как только начинаю ее выводить в алерт или изменять как все идет по пизде. Этой какой то приколь третей вьюшки?
276 1865054
>>65047
this.inputVal ?
277 1865060
>>65054

>this


спасибо анон, по ходу мне пора идти спать
278 1865061
>>65001
Ты не очень удачно пошутил.
VSCode написан на джаваскрипте (ts), он просто в принципе не может работать быстро.

Идея (webstorm) - это мощный и удобный инструмент, который делает кучу всего, и, практически, пишет код за тебя, лол.
С учётом этого, кушает он не много и работает очень быстро.
Если бы VSC попытался делать всё то же самое, он бы просто не запустился бы, лол.
Купи SSD и всё будет летать.
279 1865062
>>65001

Пиздец, у фронтендера нет денег на мак с нормальными для 2020 32гб рамы. Телл ми море.
280 1865064
>>65062

>мак


На них кто-то реально работает? Я не понимаю, как можно программировать без минимум двух мониторов.
281 1865065
>>65062
Не все уже вкатились
image.png30 Кб, 808x577
282 1865075
>>65065
>>64567

>А можно 10.times(i => console.log(i)); ?


Конечно, можно.

>Строка это не совсем примитив,


У тебя (как в принципе и у многих) не правилное понимаение что есть примитив. Отличия примитива от объекта, не в том, что одно reference type,а другое value type (тем более, что под капотом это все равно не так), а в семантическом поведении. Еще раз повторю, тебе ничто не мешает создат собственный класс примитивных объектов, для инстансов которого будет выполняться StrictEqual

>new Yoba() === new Yoba() // true


>new Yoba([1,2,3]) === new Yoba([2,1,3]) // false


>new Yoba([1,2,3]) === new Yoba([1,2,3]) // true



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

>Но так-то этот подход под капотом, и пользоваться им никто не заставляет


Отправка сообщений - это как раз не подкапотная реализация, а семантическое поведение, от непонимания котрого следует все остальное непонимание и неприятие js. Все ништяки ввиде позднего связывания, контектсов, динамиечского неявного приведения типов, которые нивелируются и списываются большинством в минусы - это наоборот достояинства, которые и есть отражения ооп-шной Кеевской модели. Объект - это набор слотов, а любая операция в жс - доступ к свойству, вызовы функции, метода, итерация, привеедение типа, рефлексия - это отправка сообщений объекту с определенными аргументами и диспетчерезация тих сообщений. Большинство из типов сообщений в 2020ом уже можно перехватывать.

Да, жс не pure ооп - в нем не являются объектами сами констуркции языка, но во-первых чистота и не являлась требованием Кея, во-вторых ты можешь это все навернуть поверх имеющейся объектной моедли, потому как она очень мощная и богатая. Просто никто этим не пользуется, по тем де причинам, по которым никто не пишет на смоллтолке и лиспе (которые Кей и называл истинно ООП языками в его концепциях, большее объектно-ориентированными, чем джаваа и плюсы).

Джава и плюсы - это структурное программирование Вирта, в котором статичную структурность формализовали в набор парадигм и паттернов, а сверху наворачивают (или с разным успехом пытаются) ATD.

Динамическое программирование (и как парадигма, и как концепция объектной модели) - слишком сложное для людей. Она требует дисциплины, опыта, и таланта проектирования. А от масс этого требовать нельзя. Поэтому динамичность всегда останется оккультным мастерством, доступным не многим.
image.png30 Кб, 808x577
282 1865075
>>65065
>>64567

>А можно 10.times(i => console.log(i)); ?


Конечно, можно.

>Строка это не совсем примитив,


У тебя (как в принципе и у многих) не правилное понимаение что есть примитив. Отличия примитива от объекта, не в том, что одно reference type,а другое value type (тем более, что под капотом это все равно не так), а в семантическом поведении. Еще раз повторю, тебе ничто не мешает создат собственный класс примитивных объектов, для инстансов которого будет выполняться StrictEqual

>new Yoba() === new Yoba() // true


>new Yoba([1,2,3]) === new Yoba([2,1,3]) // false


>new Yoba([1,2,3]) === new Yoba([1,2,3]) // true



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

>Но так-то этот подход под капотом, и пользоваться им никто не заставляет


Отправка сообщений - это как раз не подкапотная реализация, а семантическое поведение, от непонимания котрого следует все остальное непонимание и неприятие js. Все ништяки ввиде позднего связывания, контектсов, динамиечского неявного приведения типов, которые нивелируются и списываются большинством в минусы - это наоборот достояинства, которые и есть отражения ооп-шной Кеевской модели. Объект - это набор слотов, а любая операция в жс - доступ к свойству, вызовы функции, метода, итерация, привеедение типа, рефлексия - это отправка сообщений объекту с определенными аргументами и диспетчерезация тих сообщений. Большинство из типов сообщений в 2020ом уже можно перехватывать.

Да, жс не pure ооп - в нем не являются объектами сами констуркции языка, но во-первых чистота и не являлась требованием Кея, во-вторых ты можешь это все навернуть поверх имеющейся объектной моедли, потому как она очень мощная и богатая. Просто никто этим не пользуется, по тем де причинам, по которым никто не пишет на смоллтолке и лиспе (которые Кей и называл истинно ООП языками в его концепциях, большее объектно-ориентированными, чем джаваа и плюсы).

Джава и плюсы - это структурное программирование Вирта, в котором статичную структурность формализовали в набор парадигм и паттернов, а сверху наворачивают (или с разным успехом пытаются) ATD.

Динамическое программирование (и как парадигма, и как концепция объектной модели) - слишком сложное для людей. Она требует дисциплины, опыта, и таланта проектирования. А от масс этого требовать нельзя. Поэтому динамичность всегда останется оккультным мастерством, доступным не многим.
283 1865084
>>65064
Ты не поверишь, но маки бывают с мониторами. И даже со многими.
Display Port - это изначально макинтошевский тип порта.
И к ноутбуку монитор тоже подключается, как ни странно.
И на них не просто работают, на них хуярят за всю мазуту - кодинг, музыка, видеомонтаж, 2D-3D графика.
284 1865086
>>65075
Нихуя, ты залупил.

>Большинство из типов сообщений в 2020ом уже можно перехватывать.


С этого места можно поподробнее.
285 1865088
>>65086

>поподробнее


Все известно же. Well-known symbols и proxy.
286 1865091
>>65075

>10 .times(i => console.log(i))


Только что сделал такое, прямо в консоли.
Не хуже любого руби-хипстера.
Пойду отхлебну смузи и спать.
287 1865096
>>65084
Какой тогда в нем смысл, если не нужна мобильность? Вместо нормального процессора получаешь троттлящий обрубок. А слабый процессор - это медленная сборка проекта, тормозящий автокомплит и прочее.
288 1865101
>>65096
В "нём" - это в чём?
Ты под словом "мак" подразумеваешь "макбук", что-ли?
Бывают ещё iMac и Mac Pro, вообще-то.
Смысл - в Мас OS и топовом безглючном железе.

Если "макбук", то, всё равно, люди так делают, по разным причинам.
И на некоторых галерах так делают - выдают людям макбуки для работы, реально.
На джаве я бы на ноутбуке ничего серьёзного писать не стал, а на руби-хуюби-жс вполне себе пишут, хипстеры.
289 1865119
>>63168 (OP)
Имеет ли смысл из строки str="abcde...100500чаров";
сгенерировать объект вида obj = {"a": 0, "b": 1, "c": 2, ...};
чтобы с помощью in ускорить indexOf?
То есть, будет ли работать (c in obj) быстрее чем (str.indexOf(c)!==-1), с учётом генерации объкта? Или проще оставить IndexOf, и не ебать мозги, ни себе ни людям, генерацией этого пиздатого, многомерного объекта?
290 1865120
>>65119
Наверно имеет, хотя наверно лучше Map. А по твоей ситуации смотри сам.
291 1865122
>>65119

>будет ли работать (c in obj) быстрее


Не будет. При строке в 10000500 чаров у тебя коллизий в хештаблице будет жопой жуй.

> Или проще оставить IndexOf, и не ебать мозги


Нужно использовать 'str'.includes
292 1865123
>>65119
Можешь попробовать сортануть и искать бинарно.
293 1865130
>>65119
Генерация объекта это O(n) т. е. тоже самое что и indexOf. Т. е. имеет смысл только если ты с одной длинной строкой работаешь много раз.
Во-вторых, пользователь не скажет тебе спасибо за то что ты забиваешь его оперативку своим объектом, вместо того чтобы немного нагрузить его процессор вызовом indexOf
294 1865136
>>64484
Проебамп
295 1865145
>>64997

>Почему ты думаешь, что не должно?


А почему должно? Реакт не вызывает ререндер просто потому что ты меняешь рандомные переменные. Только на изменении стейта или форс апдейде.
296 1865149
>>65061

>VSCode написан на джаваскрипте (ts), он просто в принципе не может работать быстро.


Ну давай расскажи какой редактор быстрее.

>Идея (webstorm) - это мощный и удобный инструмент, который делает кучу всего, и, практически, пишет код за тебя, лол.


Ясно-понятно, IDE-даун не мог не пизднуть в сторону vscode. А теперь давай расскажи какая тормозная Idea.

>С учётом этого, кушает он не много и работает очень быстро.


Чиво блядь, 500-1000 Мб это немного? Опять IDE-даун обосрался в штаны. Это еще у тебя не Ultimate версия, она может и 2Гб жрать спокойно.

>Если бы VSC попытался делать всё то же самое, он бы просто не запустился бы, лол.


Что то же самое то? Сто процентов vscode ты не пользовался и не знаешь ее возможности.

>он бы просто не запустился бы


Пруфы будут балабол?
297 1865150
>>65064
Да, примерно все крутые посоны на них.

Алсо, норм работаю на ноутах уже шесть лет или около того. Не понимаю зачем людям второй (третий, десятый) мониторы, если работаешь все равно с кодом шириной 80-100 символов. Ну и это же с дивана вставать придется!
298 1865158
>>65149
Ты просто сравни как происходит резолв конфликтов гита в vscode и вебшторме. Уже только ради этого стоит на него пересесть.

> Чиво блядь, 500-1000 Мб это немного?


А для тебя много? Я даже когда на 8гб сидел с двумя открытыми вебштормами и 30 вкладок хрома и то нормально было, но не иметь сейчас хотя бы 16гб оперативы это долбоебизм.
299 1865167
>>64484
Оче мутные вопросы, анон.

>Какие самые лучше технологии есть для spa?


Реакт, Ангуляр и Вью самые популярные.

>Ну например мне нужен фронтовый раутинг


Зависит от выбора фреймворка.

>обычный раутинг(для api).


Сервер с апи это отдельное приложение, он не имеет отношения к твоему spa.

>Правильно ли я понимаю что по-хорошему это должны быть 2 разных приложения? Ну, например, альтернативой SPA'хе должен быть мобильный клиент или там электрон клиент.


Ш Т О?

>А что вы думаете про Single-SPA?


Тебе не нужно.
300 1865177
>>65158

>Ты просто сравни как происходит резолв конфликтов гита в vscode и вебшторме. Уже только ради этого стоит на него пересесть.


IDE-даун не смог в консольный git.

>А для тебя много? Я даже когда на 8гб сидел с двумя открытыми вебштормами и 30 вкладок хрома и то нормально было, но не иметь сейчас хотя бы 16гб оперативы это долбоебизм.


А как же ко-ко-ко VSCode медленный и много жрет памяти? Ты переобулся. Сначала обосрался, а потом сделал вид, что так задумано.
301 1865179
>>64484

>Сап, двач. Какие самые лучше технологии есть для spa?


ClojureScript
302 1865182
>>65061
Шутка действительно не особо удачная, но я чот сам хихикнул. И если серьезно, у идеи есть два фундаментальных недостатка
1) Мееееедленный запуск и тупняки при работе, бесит сука (да, это потому что я жадный и из принципа не покупаю SSD и 32 гб оперативы для запуска IDE ака текстового редактора с наворотами; алсо, см. Рис. 1 в жаватреде)
2) Жыр. Нет, серьезно, десяток панелей, функций до пизды, мануал размером с аллаха, даже браться страшно. Также это называется "сильно перегруженным интерфейсом".
Ну и то что он платный, а денег на лицензию мне никтотне даст, но это детали.

Алсо, мне почему-то кажется, что vs code ты реально не пользовался, там вполне приличное автозаполнение. Алсо, примеры "писания кода за тебя" в студию.
303 1865184
>>65101
Я лучше себе за втрое меньшую фену обычный ноут куплю, спасибо
304 1865186
>>65119
Сильно зависит от задачи и панацеей в любом случае не является, особенно если строка реально длинная. Лучше принеси её обработку полностью.
305 1865188
>>65145
Учитывая что я вижу появление компонента, я подозреваю, что lazy вызывает ререндер как только промиз резолвится. Если так подумать, если бы этого не происходило, то чистое lazy без всяких оберток требовало бы от разработчика самостоятельно триггерить ререндер как-нибудь.

Впрочем, я переделал с useState(init function), потому что повторная инициализация ломала код, ну и работать с флагом приятнее, чем с промизом.
jGgArtZZQh4.jpg71 Кб, 427x604
306 1865191
>>65158

> плавно съехали на то, что без 16 гб программировать нельзя


Годы идут, а жава не меняется.
307 1865197
>>65191
Не, Netbeans уже и не упомнит никто.
308 1865214
Ебать прилетает json и че как его типизировать?
309 1865216
>>65214
Посоны отменяем типизацию, нам оказывается данные могут извне приходить.
310 1865222
>>65216
Это ты еще разбор xml в госпарашных сервисах не видел. Вот там да, там пиздец.
311 1865224
>>65197
Меня интересует скорее фентральный петух. Кроме того, скорость загрузки с тех пор увеличилась несильно.
312 1865229
>>65214
this.foo = json.foo as FooType
this.bar = json.bar as BarType
// ... повторять пока не надоест
314 1865239
>>65231
JSON схема ничего не знает про TS типы, да даже про обычные JS классы ничего не знает
315 1865269
>>65184
Оно недёшево, это да.
Но, у макбуков очень хорошее соотношение цена/качество, как ни странно.
Это как Land Cruiser, примерно.

Так было, по крайней мере, до недавнего времени.
Модели последней пары лет какие-то странные.
И вообще, после Джобса Apple по пизде пошёл немножко.
316 1865270
>>65239
ты читал вообще что там пишут?

Approach: Invoking builder methods and functions to produce both validation functions (at runtime) and static types (at compile time).
Approach: Compiling TypeScript types to validation code at compile time.
Approach: Converting TypeScript types to JSON schema.
Approach: Converting a JSON schema to TypeScript types.
317 1865273
Сап, ананасы

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

Как этот процесс ускорить? Че-то порисовать? Диаграмки какие-нибудь? Может есть книга на эту тему или статья, киньте почитать, плиз.
318 1865274
>>65270

>Approach: blabla


Хуйня из под коня это всё. Простейший пример: пропертя "x" должна быть типа Date
319 1865284
>>65177

>IDE-даун не смог в консольный git.


Резолвить конфликты через консольный гит - это какой-то особый вид мазохизма.
>>65182

>не покупаю SSD


В 2020 без SSD жизни нет. Это касается не только IDE, но и вообще любых программ. А поскольку даже терабайтный SSD теперь стоит гроши, оправдания его отсутствию просто нет.
>>65182

>2) Жыр. Нет, серьезно, десяток панелей, функций до пизды, мануал размером с аллаха, даже браться страшно.


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

А вскод мне не нравится по двум причинам. Во-первых, он медленнее. Не в смысле загрузки, а в смысле работы. Самый хорошие пример - скорость автокомплита кода. Во-вторых, нет ощущения целостности. IDE устанавливаешь, и все работает как надо из коробки, а вскод надо пердолить, и при этом не факт, что получится нормально.
320 1865293
>>63168 (OP)
Создал 2 разных элемента:
first = document.createElement("div");
second = document.createElement("div");

Как их "сцепить" вместе, не оборачивая в третий элемент?
321 1865297
>>65293
Оператором сцепления пробовал?
first ∞ second
322 1865298
>>65273
- Визуализировать (рисовать руками на бумаге).
- Пойти гулять, на ходу начинает работать мозг.
- Просто переключиться на что-то другое (не мозгоёмкое), и дать поработать бессознательному.
323 1865300
>>65293
let fragment = document.createDocumentFragment()
fragment.appendChild(first)
fragment.appendChild(second)
324 1865309
>>65273
Обычно я ищу и смотрю как у других сделано.
325 1865314
Этот ваш React надо обоссать и сжечь уже за одно то, что там нельзя передать произвольный параметр в функцию обработки события.

Это же просто пиздец какой-то - надо делать это через лямбды, которые пересоздаются при каждом рендеринге. Как вообще можно делать такую хуйню, и что-то кукарекать про "лучший фреймворк для UI" и т.п.?
326 1865315
>>65314

> React надо обоссать и сжечь


Лучше сначала сжечь, а потом обоссать!
327 1865328
>>65284

>без SSD жизни нет


Сойдемся на том, что я старый консервативный пердун, которому и так нормально. Может еще годков через 5 куплю, когда окончательно скорость загрузки с HDD заебёт. Кроме того, у них же вроде ресурс ощутимо меньше, не? Мне мамка не простит, если я ее фотки из Турции проебу.

> со временем разберешься


Так-то оно конечно так, но даже в VS Code я пользуюсь довольно небольшим набором фич. Собственно, переименование, поиск символов в коде и гит - что еще надо-то?

> автокомплит
Ладно, тут ничего не скажу, автокомплит там и правда туповат.

> нет ощущения целостности


Мне кажется тут вопрос не в целостности, а в "поставил, работает и не надо зачищать напильником"

Знаешь, анон, я чет задумался аж, не попробовать ли еще раз. Нет ссылочки на нормальный торрент с вебштормом?
328 1865330
>>65297
Пробовал, остаюсь на нейтралке.
329 1865331
>>65314
О, еще один познал дзен. Переходи на Vue или лучше возвращайся обратно на чистый JS.
330 1865340
>>65309
Обычно это все слишком частные случаи
331 1865347
>>65314
useCallback если тебе нужно сохранить ссылку на обработчик
332 1865352
>>65167

> Сервер с апи это отдельное приложение, он не имеет отношения к твоему spa.



> Правильно ли я понимаю что по-хорошему это должны быть 2 разных приложения? Ну, например, альтернативой SPA'хе должен быть мобильный клиент или там электрон клиент.



Здесь про это же. Типа сервер с апи и фронт 2 разных приложения. И в теории клиентов может быть более одного.
333 1865356
>>65314
Петушок не слышал про хуки?
image.png769 Кб, 827x1254
334 1865357
Так же, за одно вопрос:

Гайзы, чё думаете про frameworkless front-end development? Сижу читаю книжку, как думаете, хуйня?
335 1865359
>>65357
лучше ты нам расскажи как книжка.
336 1865365
>>65328

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


Это не возрастное. Ты просто долбоёб.

>у них же вроде ресурс ощутимо меньше


Это у современных hdd ресурс ощутимо меньше.
Разумеется, SSD надо брать такой, который называется Samsung. И лучше Pro.

>>65356
Я не реактопетушок, для начала.
Я просто здравомыслящий наблюдатель.
И на сайте реакта, в том месте где речь идёт об этой хуйне, никакие хуки-хуюки не упомянуты, а написано - "Такая вот хуйня, да. Если вас это не устраивает - оптимизируйте". Как "оптимизировать" - не написано.

>>65331
Ты прав, дружище.
Только переходить мне не надо, я изначально там.
Просто, время от времени, выхожу посмотреть, что там у конкурентов.
И каждый раз охуеваю - то с реакта, то с ангуляра, то с хомячков, которые плачут, но продолжают жрать эти кактусы.
337 1865371
>>65359
>>65357
Бегло просмотрел только что.

Очередная порция охуительных историй на тему "почему писать на ассемблере лучше, чем на си" в адаптации для 2019 года.
Всё это щедро сдобрено пафосом и мессианством.
Пролистать не вредно - для общего развития.
Но, делать так не надо.

Вообще, если видите книжку итальянского автора (их дохуя сейчас) - смело проходите мимо.
338 1865375
>>65357

>Гайзы, чё думаете про frameworkless front-end development?



Ну вот почему у того же пынькиного дерипаски отдельный заводик плавит люминь, а отдельные гномики в шахтах алюминиевую руду добывают? Почему бы литейщикам бы в шахте киркой не помахать в начале дня а потом накопанную тачку самим не пообогащать а потом бы уже не поотливать?
339 1865379
>>65359

Ну сначала рассказывает про frameworkless и как это лучше чем секс, потом хуесосит ангуляр и реакт, жикуери хуесосит, вью даже не упоминает. Говорит что у него javascript fatigue потому что он заебался учить фреймворки.

Делает рендеринг и маня mvc на чистом жаваскрипте, ебёт дом дерево как послендюю шлюху.

Ну там в принципе просто инструкции по тому как менеджить стейт, делать маня-компоненты и вообще рендер, как делать раутинги. Так же говорит что в html есть классы, почему бы им не представляться классами в ООП коде, типа законом не запрещено.

Говорит что два самых страшных антипаттерна это бежать за хайпом и захламлять код зависимостями "на будущее".
image.png14 Кб, 273x219
340 1865380
>>65379

>захламлять код зависимостями "на будущее".


Мне даже "на настоящее" не хочется захламлять. Добавляешь все, что нужно, и уже бандл мегабайты весит, угх.
341 1865385
>>65314
И в чем тут виноват Реакт? В том, что в JS функции уникальные? Как ты вообще представляешь себе желаемый API? Используй useCallback, епт, если очень надо.

Модалку-то смог сделать в итоге?
image.png221 Кб, 960x520
342 1865388
>>65380
Ну не знаю, вот у меня вообще другой страх. Знаешь что меня бесит больше всего? Мобильные НАХУЙ телефоны.

Ну никак к ним не подойти. Как не старайся резиново тянуть свой ебучий интерфейс, как не старайся подстраивать под эту срань, всё равно же придётся отдельно делать веб приложение. Ну чаще всего. А ещё хуже 2, потому что кроссплатформенная мобильная разработка это говно ебучее.

Что ж мы столько труда убиваем в эту хуйню, когда we need an app.

Давайте уже либо делаем PWA и ебём мобилу в жопу, либо просто этим даунам ссылку редирект на скачку въебём.
343 1865398
>>65385
Про модалку - это не я. Я просто за Vue топил, хотя и агрессивно.

>Как ты вообще представляешь себе


В программировании практически любая проблема решается добавлением очередного слоя косвенности (indirection).

Реакт - это внутренний DSL, чистый код. Это очень хуёво масштабируется. Отсюда все эти костыли и изъёбы, ехал паттерн через антипаттерн, и новые бест-практисиз каждый квартал.

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

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

Вообще, Vue - всё ещё очень недооцененная вещь.
Видимо, просто потому, что люди немного устали от зоопарка фреймворков, и заранее негативно настроены. К тому же - "это китайщина", "фейсбук - авторитет" и т.п.
344 1865411
>>65398
В Реакте нет никакой проблемы в том, чтобы передать через пропсы функцию с привязанным аргументом: <Component onClick={() => doStuff(foo)} />. У нее будет нестабильная ссылка, но это же логично — ведь foo тоже переменная, а onClick от нее зависит. Новое значение foo — новая функция.

Ты в ответе много умных слов написал, но я так и не понял что тебя смутило в этом решении и что конкретно ты предлагаешь поменять в API.
345 1865415
>>65411
В твоём примере лямбда будет создаваться каждый раз при рендеринге. Это я и обозначил как недостаток.
Про хуки я уже понял (не пробовал пока конкретно это), но, хуки - это костыли и магия. Именно то, чего в Реакте (якобы) нет, и поэтому он и хорош.

Я ничего не предлагаю поменять в API реакта.
Речь была о том, что это фундаментальный недостаток (продолжение достоинств, если угодно).

Кстати, о магии - я предпочту магию Vue, потому, что она даёт охуенный профит, а реактовская - даёт лишнюю еблю мозга и бойлерплейт.
346 1865419
>>65415

>В твоём примере лямбда будет создаваться каждый раз при рендеринге.


Логично, она же зависит от foo.

>Это я и обозначил как недостаток.


Почему?

>Про хуки я уже понял (не пробовал пока конкретно это), но, хуки - это костыли и магия.


Еще не пробовал, но уже все решил? Понятно.
347 1865423
>>65398

> Vue недооценен



Mithril говорит "hold my beer". По сути ж годнота годнотой и в попу тебя не ебёт. DSL вообще хуйня
348 1865429
>>65419
Я не пробовал именно этот хук.
Но, да, в реакте у меня реального опыта нет.
И я прекрасно понимаю, что хороший фреймворк - это тот, к которому ты привык.

Так что, я согласен, что нужно убрать слово "костыли", ибо тогда этим словом можно назвать и весь реакт, лол.

Но, хуки - это магия, с этим ты не будешь спорить?
349 1865434
>>65429

>Но, хуки - это магия, с этим ты не будешь спорить?



Я не знаю что ты понимаешь под «магией», не очень люблю этот термин. Хуки — удобная и умеренно сложная абстракция. Я понимаю как они работают, поэтому для меня они магией не является.
350 1865435
>>65357

> frameworkless front-end development


Не взлетит. Лет 6-7 назад, ещё во времена первого ангуляра, занимался разработкой гуёв для STB (приставки к телеку для кабельного ТВ). На них как правило очень слабое железо, на которое еле-еле влазил заоптимизированный хромиум, соответственно требования к JS коду были очень высокие в плане хавла ресурсов. Сначала пердолили читый DOM c CSS, но в итоге всё-равно начали ваять велосипедный фреймворк на основе бэкбона
351 1865438
>>65423

>Mithril говорит "hold my beer". По сути ж годнота годнотой и в попу тебя не ебёт. DSL вообще хуйня



`${любая_другая_хуйня} говорит "hold my beer". По сути ж годнота годнотой и в попу тебя не ебёт. DSL вообще хуйня`
352 1865439
>>65434
Я же не говорил, что магия это плохо.
Скорее, я имел в виду, что они долго копротивлялись за чистоту, но, потом сдались - сначала контекст (говно, на самом деле), потом - хуки.

С появлением хуков реакт стал вполне пригоден для работы, на мой взгляд.
До этого, конечно, хуйня была полная.
А сейчас некоторый лишний бойлерплейт - это разумная плата за чистый js, и все преимущества, которые это даёт.
353 1865441
>>65435

Да причём здесь взлёт или не взлёт. Речь не о том чтобы от фреймворков избавиться, а чтоб не иметь привычку писать npx create-react-app spashka-ot-pashki на каждый чих
354 1865442
>>65439

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


Что ты под этим подразумеваешь? Приложение не может нормально работать без сайд-эффектов и Реакте всегда были инструменты для работы с ними.
355 1865445
>>65439

>До этого, конечно


А ты знаешь как было до этого?
356 1865447
>>65441
Ну если прям совсем один чих, то подключается зепта прямо с cdn и дальше $(() => $('#btn1').on('click', () => console.log('апчхуй блядь')))

Смысла писать про это книгу не вижу
357 1865448
>>65442
>>65445
Да, я знаю, как было до этого.
Я даже знаю как было до реакта, лол.

Скажи, лучше, что тебе не нравится в реакте?
Типа, вот, всё охуенно, но ... - это реально заёбывает.
358 1865450
>>65182

>это потому что я жадный и из принципа не покупаю SSD



Ты не жадный, а просто тупой
359 1865453
>>65182

>Алсо, примеры "писания кода за тебя" в студию.


Да ты реально от сохи, чувак.
Ты IDE-то нормальные видел хоть раз, а не всю эту VS-хуиту мелкомягкую?
360 1865454
>>65453

>IDE-то нормальные видел хоть раз



Delphi с китайским cnpack
361 1865461
>>65448
1. Слоупочные темпы развития. Кажется, что у меня внуки появятся раньше, чем concurrent mode выйдет.
2. Нет единственно правильного стора, подхода к стилям, архитектуры и т.д. Это и преимущество и проблема.
3. Использовать хуки без линтера малореально. Что-нибудь да упустишь. Его, конечно, все и так используют, но требование раздражает.
362 1865482
Нахуя пишут не использовать интерфейсы? Типа в них можно добавить всякую хуйню извне? В гайде от редакса есть такая реализация
interface lol{}
interface kek{}
export type xyiType = lol | kek
Насколько валидна такая запись и как часть используется? Стоит ли упарываться подобным образом? Или тупа все хуярить типами?
363 1865485
>>65482

>Нахуя пишут не использовать интерфейсы?


кто пишет? покажи где
365 1865534
>>65447

Ладно, скожу конкретнее, большая часть spa-шек не нуждаются в фреймворках вообще и они просто грузят бровсер
366 1865542
>>65534

>большая часть spa-шек


>большая


Скорее меньшая

Когда на странице какой-нибудь один ебучий виджет и отправка одной формы

Во всех остальных случаях заебешься это поддерживать без фреймворка
367 1865544
>>64494
У тебя лишний див приехал. Между красным и синим пустота должна быть.
368 1865547
>>65357
где скачать ?
369 1865573
>>65547

Я не помню где нашёл, могу залить на файлообмену или на мыло скинуть
371 1865581
>>65547
В вк есть, в документах.
372 1865649
Как с помощью vue добавить елементы на страницу, например новый параграф?
373 1865672
Как типизируют экшены? Если ставить тип any то то action.payload.id определен, если заменить any то id подчеркивается, че эт?
374 1865677
>>65672

>вуе


>типизировать



Бросай ты это дело и переходи на ангуляр.
375 1865695
>>65534
Сильное заявление.
Ты, наверное, написал свои библиотеки?
Если да, то, чем они лучше реакта/vue?
Или просто хуяришь спагетти код, который сам же через неделю хуй поймёшь что делает?

>>65672
Ты имеешь в виду Vuex? Там пролёт с типизацией, к сожалению.
Но, они совсем скоро выкатят новый, более лучший.

Я в подобных случаях (не только vuex, много где) делаю функцию приведения типа:

Допустим, у тебя есть interface Zalupa {id: number}
Тогда (можно вынести в отд. модуль):
const asZalupa = (val: any) => val as Zalupa;
Потом используем:
asZalupa(action.payload).id ...

Это дёшево и вкусно.

>>65677
С ангуляром он заебётся сильно быстрее, чем с типизацией в Vue.
376 1865704
>>65542
Суть в том, что любая идея вида "ебучий виджет и отправка формы" рано или поздно перерастает в "заебешься это поддерживать без фреймворка".
Да и даже одну форму быстрее буде сделать с фреймворком чем без, потому что ты используешь уже готовый код, а не свой велосипед написанный на чистом html css + js
377 1865705
>>65695

>С ангуляром он заебётся сильно быстрее, чем с типизацией в Vue.



В треде видно только ёблю с Vue и его братом-дебилом React'om. От некоторых вопросов даже смешно становится, ведь потом эти люди будут говорить что Ангуляр слишком сложный и не понятный.
378 1865717
>>65705

Правило Кобола.

Любой хипстерский фреймворк, если он не сдох в безвестности, рано или поздно превращается в жирнотырпрайзный опердень для сириус бизнеса.
image.png331 Кб, 757x550
379 1865724
380 1865740
Хочу использовать js для автоматизации рабочих процессов, я инженер. Какие библиотеки/фреймворк можете посоветовать? кроме Питухона
381 1865775
>>65740
Эээ, ноду? Что автоматизировать-то хочешь?
382 1865826
>>65740
>кроме Питухона
Ну, то-есть, тебя уже проконсультировали грамотные люди.
Но, ты решил их не слушать.

ЖС - он (в общем и целом) - немножко для другого.
Но, тут всё зависит от того, что тебе нужно.
От того, что именно ты понимаешь под терминами "рабочие процессы" и "автоматизация".
383 1865850
Фетчем забираю json помойку, в тс есть тип «помойка»?
384 1865855
>>65850
Да, называется any
385 1865856
>>65855

>any


Вся суть ts
386 1865859
Нужно ли веб разработчику учить CS, или по ходу дела все необходимое в любом случае выучишь?
387 1865862
>>65859
Да.
388 1865866
>>65856
Вся суть долбоебов которые не понимают, что потратив пару минут на описание типов, ты экономишь часы будущего времени.
389 1865913
>>65866
Няш, а чем описывают обычно? Типы или интерфейсы?
390 1865914
>>65859
По верхам точно нужно. Сто видов сортировок дрочить не обязательно.
391 1865917
>>65866
Ага, только там по пять минут на каждый чих и в сумме на бесполезную хуйню(ведь в рантайме нужно проверки типов дублировать ручками) уходит гора времени.
392 1865921
>>65917

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


Зачем? Весь смысл TS в том, чтобы этого не делать.
393 1865929
>>65921
Затем что ts это просто крутой линтер. По сети, от стороннего компонента итд любое говно может прилететь.
394 1865944
>>65929
Если сервер свой, то любое говно не прилетит. При обострениях паранойи можно типизировать все как optional или прогонять через ajv (типы прекрасно генерятся на основе схем).
395 1865951
на этом ебучем jsfiddle можно постить анонимно или только через регу блять?
396 1865967
есть код js в плагине написан на ванилле для оптимизации загрузки страниц. он дергает мне шрифты сам по себе отдельно. я хочу убрать этот код и самостоятельно их грузить через <link preload/> открываю код, а там код который прогнали через бабел и который нахуй вообще не читаемый просто. как поступать в таких случаях?
397 1865971
>>65967
Искать оригинал
398 1866009
>>65971
его нет. в том то и проблема. висят только smush-lazy-load.min.js и smush-lazy-load.min.js.map
399 1866036
>>65866
забей, ты споришь с анонами, которые в крупных проектах хоть в каких нибудь не работали никогда
400 1866038
Я знаю react на четверочку. Как быстро получиться освоить vue? В рф почему-то много ваканисий по нему
Могу посвящать этому 6-8 часов в день
401 1866040
>>66038
По туториалу и докам пробегись. Это тот же реакт по сути.
402 1866041
>>66040
есть пример добротного по твоему мнению проекта на гитхабе.
я бы пробежался по истории коммитов с начала до конца
403 1866044
А вы замечали, что когда пишете проект, то большая часть времени уходит на ковыряние в html/css , а не в любимом фреймворке. А 80% когда js это не уникальный функционал, а шаблонные практики при работе с данной библиотекой
404 1866127
>>65967
Набрать в гугле javascript beautifier.
405 1866128
>>66038
>>66040
Это не реакт ни разу.
Вот прямо совсем.

Vue - простой, интуитивно-понятный фреймворк (в отличие от реакта).
Официальная документация - очень хороша. И есть на русском.
Сделай туду для разминки.
После этого - гугол в помощь.
406 1866130
>>65913
Типы когда описываешь уже существующее, интерфейсы когда описываешь новое.
>>65929
>>65917
Ну так в том и дело, что проверяешь только там где летит от стороннего компонента. В языках со строгой типизацией тоже проверять нужно, если не хочешь чтобы программа от эксепшена упала.
407 1866144
>>66128
поддвачну этого в том плане, что реакт "не особо" интуитивно-понятный

Я когда разбирался с хуками, например, уже был знаком с реактом и они в целом легко зашли.

Но вот как объяснить нубу, которые только-только учебник кантора прошел и 2 макета сверстал, что такое этот useEffect, что ознает эффект и почему вообще, если ты хочешь на размонтирование компонента что-то повесить, то тебе в этом хуке нужно функцию вернуть - хуй знает. в этом плане классовые компоненты были куда более простыми в понимании
408 1866152
>>65913
В смысле "типы"? Ты имел в виду "классы"?

Это не так просто объяснить тому, кто задаёт такие вопросы.
Если коротко и применительно к фронтенду - для данных (json, массивы, объекты) - интерфейсы, для сервисов (те объекты, которые что-то делают с данными) - классы.

Класс - это и интерфейс и реализация.
Интерфейс - только интерфейс.
У данных в JS уже есть реализация - это объекты {foo: 'BAR', ...} и массивы, и делать классы (какую-то дополнительную реализацию) для данных - это лишняя ебля мозга.

Также, есть такой термин, как "программирование на интерфейсах", это когда ты для всего пишешь интерфейсы, в том числе, для классов-сервисов (они реализуют эти интерфейсы). И при использовании такого кода работают с интерфейсами, а классы под них просто где-то создаются, на фабриках и т.п. Это лишняя работа, но, позволяет менять реализацию не переписывая программу. Так делают в достаточно больших проектах.
409 1866165
react native ?
410 1866186
>>66165
BACKBONE FOREIGN
411 1866194
Нужно создать node.js приложение с sqlite и sequelize. Как отдельно подключить sqlite и sequelize понятно, иструкций много в интернетах. Как подлючить вместе?
412 1866204
>>66194
разве ты не создаешь отдельные экземпляры этих библиотек?
413 1866209
>>66194

>Как подлючить вместе?


Без задней мысли, берешь и подключаешь. В чем проблема-то?
414 1866211
>>65913
А дошло, ты имеешь в виду литералы типов?
Я их для себя как-то в отдельную категорию не выделяю.

Да похуй, делай как удобно.
Но, мне кажется, интерфейсы удобнее в тех случаях, когда объект используется в разных местах программы.
415 1866225
>>64558
FP - это Reasonml, а не arr.map
416 1866242

>АРЯЯЯ статическая типизация нинужна! Ограничивает свободу только!


>А зачем тогда в жс введено объявление const?


>Ну как ты нипанимаешь! Это жи другое! const это модно и круто, все в моем коворкинге подтвердят

417 1866244
>>66204
>>66209
В доке sequelize непонятно написано. Надо подлючение создавать с помощью адаптера к базе или с помощью sequelize? И нужен ли адаптер если есть sequelize? Про sqlite я лоханулся, она не поддерживается в sequelize, буду использовать postgres.
418 1866245
>>66242
Использование const ничего не стоит.
Для ts нужно тащить компилятор, превращать код в нечитаемое жабоговно, всирать на это время. И все это ради чуток улучшеного линтера и автокомплита, такая-то победа!
419 1866246
>>66225
Map чисто фпшная фича. Это фп и точка. Ты не в теме.
420 1866247
>>66244

>Про sqlite я лоханулся, она не поддерживается в sequelize


https://sequelize.org/master/class/lib/dialects/sqlite/query-interface.js~SQLiteQueryInterface.html не катит штоль?
421 1866252
>>66242

>АРЯЯЯ статическая типизация нинужна! Ограничивает свободу только!


>А зачем тогда в жс введено объявление const?


Какая связь между типизацией и неизменяемостью const? В фпшных языках вообще нет переменных и все неизменяемое. Они бывают и статическими и строгими. При чем тут const?
422 1866255
>>66246
Так это метод объекта, то что он не изменяет массив - не делает его ЧистоФП, может после беглого взляда на хаскель и reason, у меня сложилось неверное представление о FP
423 1866258
>>66247
Спасибо. Что то я замотался. Вроде только недавно гуглил и читал доки и ничего не нашел.
424 1866260
>>66255

>Так это метод объекта, то что он не изменяет массив - не делает его ЧистоФП, может после беглого взляда на хаскель и reason, у меня сложилось неверное представление о FP


Это не метод объекта, это функция высшего порядка. ФВП тоже чисто фпшная фича. Функция map появилась десятки лет назад, когда никакого ООП не было, и определение объектов было совсем другим. У тебя типичное оопэшное искажение мышления. Ты даже не понимаешь что откуда растет. У тебя все наоборот.
425 1866270
>>66247
Я тупанул, sqlite поддерживает, не поддерживает монго. Но мне это никак не помогает. Не пойму как подлючаться к бд, с помощью адаптера или с помощью sequelize.
426 1866274
>>66260
Такую смесь я в scalе видел, по сути ООП с ФП скрестили. JS не труфп, как и жаба(там HOF тоже можно сделать).
427 1866277
>>66260

>Функция map появилась десятки лет назад, когда никакого ООП не было


map это вообще из теории множеств, появилось ещё задолго до программирования как такового

https://en.wikipedia.org/wiki/Map_(mathematics)
428 1866294
>>66274
У JS основа фпшная, от языка scheme. Только синтаксис сишный. Все остальное накручено уже потом.

>>66277
Вот именно. Ну а в программирование попала через фпшные языки. Теперь же терминологию никто не знает, и историю программирования и языков тоже, начинают искажать. Скоро фпшные фичи, которые в некоторых языках занимают уже больше 50% всех фич - будут называть оопэшными фичами.
429 1866327
>>66277
Интересное и познавательное по теме
https://www.youtube.com/watch?v=gHiyzctYqZ0
430 1866341
>>65921
Когда у тебя клиентский код будет падать и вести себя хуй пойми как, потому что у клиента рантайм модифицирован каким-нибудь васянским расширением, я посмотрю, как ты попляшешь. А причины не узнаешь, потому что никаких проверок, и вразумительного логгировании соответсвенно что где когда и почему у тебя ломается - нет.
431 1866342
>>66036
Откуда ты можешь знать, кто именно скрывается за аноном и в каких проектах они работали? Ты отдаешь себе отчет какую дичь ты несешь, когда делаешь такие утверждения?
432 1866349
>>66294

>Теперь же терминологию никто не знает, и историю программирования и языков тоже, начинают искажать


Раз пошла такая пьянка, то ООП это не про языки, а про методолгию программирования. Никто не запрещает её применять как в функциональных, так и в структурных языках да хоть в ассемблере, как я выше уже писал. Тащемта Страуструп до C++ делал т.н. "C с классами", причем код на этом языке транспилировался в обычную сишку, которая после компилилась сишным компилером

Просто ООП хорошо зашло для UI, поэтому стало мейнстримом и под это начали пилить языки
433 1866352
>>66341

>я посмотрю, как ты попляшешь


Я даже пальцем не пошевелю. Сейчас бы из-за одного васяна который решил что шатать рантайм это хорошая идея что-то там делать, когда у десятков тысяч пользователей все ок работает. У меня и без него полный бэклог. Может еще что-то надо с теми кто захотел в консоли throw new Error() написать?

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


Вы Сентри не пользуетесь что ли? Ну это зря, конечно. Хорошая тема, рекомендую.
434 1866388
>>66252
const ограничивает свободу разработчика
а значит нинужно
435 1866393
>>66388
Какую такую свободу оно ограничивает? Надо перезаписать — юзаешь let, не надо — const. Всего лишь защита от глупых выстрелов себе в ногу
Алсо почитай про принцип наименьших привилегий
15973430701852.jpg382 Кб, 1200x900
436 1866397
Анончик, нужна твоя помощь!
Написал свой первый CRUD-API, теперь захотелось сделать к нему фронт. А ещё есть конкретная задача: визуализировать связи реляционной БД (ну или визуализировать графы). Хочется сделать это красиво и функционально.

С JS никогда не работал, поэтому решил спросить у тебя: какой фреймворк лучше подойдёт для первого раза? Может быть что-то определённое есть для моей задачи с визуализированием БД?
sage 437 1866401
>>63954
нахуя?
sage 438 1866402
>>63969
А как определить "люди" ли они или нет, когда у тебя нет опыта, м? Хуй газированный!
439 1866413
>>66349

>Раз пошла такая пьянка, то ООП это не про языки, а про методолгию программирования.


>C с классами


Противоречие. Если ООП не про языки, то при чем тут классы? ООП не про классы. ООП в современном понимании и ООП языки - это рак.
440 1866414
>>66327
Ха, интересно послушать петуханов кукарекающих на теорию категорий.
441 1866415
Есть ли жизнь без классов?
442 1866416
>>66388

>Кукарек<Кококо> кукарек = new Кукарек<>()

443 1866417
>>66397
Тысячи их
444 1866420
>>66415

>Есть ли жизнь без классов?


Emacs написан на языке без классов.
445 1866428
>>66413

>Противоречие


Пока ты искал противоречия, труп страуса пилил расширение сишечки

https://dl.acm.org/doi/10.1145/947886.947893
446 1866430
Какой объем тестового задания вы считаете приемлемым?
Сколько неоплачиваемых часов вы готовы потратить на возможность вкатиться?
15215248363460.jpg43 Кб, 720x654
447 1866433
Что быстрее выучить: реакт или вью?
448 1866435
>>66430
Пара максимум две пары часов. Скажем если выделять на собес в одной конторе 1 рабочий день, то половина это дня на непосредственно собес, вторая - на их задачку
449 1866436
>>66430
Я на день(ну вечер если все в голове закешировано) примерно давал. Можете меня хейтить, но шли одни нубы сплошным потоком.
450 1866446
>>66436
А какие критери были при отборе? Я посылаю резюме своё на hh, есть гитхаб где по 10-20 коммитов в день последние полтора месяца, react, redux все дела, несколько репозиториев. Дрочу кодинг нонстопом по 9-12 часов в день. Ни одного ответа, либо отказы, но кажется все они были с вопросом о том, есть ли у них удаленка, либо молчаливые просмотры резюме. Всё. При том до этого был опыт работы в it, работал дизайнером, опыт работы в команде есть, гитхабом и пул реквестами пользовался, т.е. не совсем с завода перекатываюсь. Ни одного ответа или тестового не давали за последние 2 недели. чяднт? Ждать дольше или объективно это низкий уровень? Должно быть портфолио с рабочими сайтами которые можно потыкать?
451 1866449
>>66433

>Что быстрее выучить: реакт или вью?


Оба без проблем учатся за неделю.
452 1866450
>>66446

>Я посылаю резюме


>Должно быть портфолио с рабочими сайтами которые можно потыкать?


Что ты там посылаешь? лол
453 1866453
>>66450
Гитхуб
454 1866454
>>66450
Ну я сайты никуда не выкладывал, потому что бека там как такового нет, просто публичные какие-то апишки берутся, но твой посыл я понял
455 1866457
>>66454

>react, redux


Так спашки на публичных апишках и должны быть, лол
Если ты там реально коммитишь и пришь, можшеь и на пендоские вакансии присмотреться
456 1866459
>>66446
Я собесил всех у кого было хоть сколько-нибудь адекватное резюме. Ну то есть вкатунов с курсов и бывших слесарей на помойку На двадцатом мне дико надоело, плюс руководство начало найм в связи с короной тормозить и они тоже начали висеть неделями. Спрашивал основы, но набралось лишь пару крепких джунов, пиздец.
457 1866464
>>66459

>хоть сколько-нибудь адекватное резюме


Можешь пожалуйста описать, что это значит? Вот пока я так понял обязательных 2 пункта, это публичный кликабельный сайт, гитхаб, и что еще? Пишу я вроде бы адекватно, и инфу о себе тоже расписываю вменяемо, не слишком сухо, но и без готов дать в жопу, только бы вкатиться
458 1866466
>>66459

>вкатунов с курсов


Как это определяется? Без тех бекграунда, или у них одни тудушки в портфолио?
459 1866471
>>66466

>Как это определяется?


Вопросом, чем знаковое число от беззнакового отличается

На курсах за 100к такое не рассказывают

другой анон
460 1866483
>>66464
Пиздец братишка успокойся там
И какой ты там ожидаешь услышать ответ от снг зоопаркной макаки?
Если горят глаза и 10 коммитов в день - открывай свои проекты с третьигруппными апи из привата и без задней мысли стучись кому угодно в резюмовые сайты и чатики
На 5$/час точно должен найти место, даже если проекты не шибко презентабельные
461 1866486
>>66464

> Можешь пожалуйста описать, что это значит? Вот пока я так понял обязательных 2 пункта, это публичный кликабельный сайт, гитхаб, и что еще? Пишу я вроде бы адекватно, и инфу о себе тоже расписываю вменяемо, не слишком сухо, но и без готов дать в жопу, только бы вкатиться


Гитхаб не с тудушками уже хорошо, сайтов почти ни у кого не было.
Вообще ждали разраба с опытом работы, с хорошим знанием js(ну и реакт сильно желателен), таких было 1.5 штуки. Остальные без опыта/смежные области типа верстки или пыха. Если ждун расписывал свой проект, как что использовал, обычно приглашали на собес. Многие тз вперед просили(и не делали)
>>66466
Так в отклике кроме этих курсов ничего нет просто. Пару пособесили они прям скажем не оче.
462 1866487
>>66393

>Всего лишь защита от глупых выстрелов себе в ногу


ГРАМОТНЫЙ РАЗРАБОТЧИК ВООБЩЕ НЕ СТРЕЛЯЕТ СЕБЕ В НОГУ, ЧЕГО НЕ ЯСНОГО?
Все эти "защиты" для лошков, не умеющих писать код
463 1866500
>>66483
>>66486
Понял вас, спасибо, ну в общем я и думал в дальнейшем сделать что-то более менее законченное, и приличное, а не по сто раз в день переписанное, и уже это выкладывать в обозримый доступ и показывать че могу, чтоб все охуели.
464 1866510
>>66428
Когда СтраусТруп был еще школьником, отцы уже писали объекты на лиспе. Без классов. Шах и мат.
465 1866511
>>66433
Vue, тут и думать нечего.

А простота реакта - обманчива, там чуть подальше зайди, и придётся закат солнца вручную делать, лол.
OOF.jpg309 Кб, 798x292
466 1866516
>>66294
Так JS это OOF с императивными конструкциями или что оно такое?
467 1866533
>>66510

> на лиспе


))))))
468 1866534
>>66516
На картинке ключевое слово - "to me".
469 1866550
>>66533
Лиспобляди уже и сюда добрались.
Странно, что за ClojureScript + React ещё не агитируют.
470 1866551
>>66534
Ключевое то, что он термин ООП и ввёл. Поэтому to me тут и есть ортогональное определение. А все остальное изковерканное. А не наоборот. Это к кукаретикам любящим кричать про настоящее программирование, настоящее ооп, и вообще вес настоящее.
471 1866557
>>66550

> Странно, что за ClojureScript + React ещё не агитируют


Действительно, а ведь я уже давно собирался всем тайпскриптодаунам засоветовать кложуру

(сам ессно в рот ебал все типизации и прочее дрочево, ведь надо доставлять стоимость вместо кода)
472 1866573
>>63168 (OP)
Есть таблица в Ангуляре (ее представляет FormGroup конечно), в ней много строк, как сделать "поиск" нужных строк? В ванильном жс я бы слушал событие onkeuyp для поля поиска над таблицей и просто ставил бы строкам, которые не удовлетворяют паттерну display = 'none' а тут как подобное мутить?
473 1866577
>>66573

>ставил бы строкам, которые не удовлетворяют паттерну display = 'none'


И рефлоу дёрнул и память не вычистил. Зачем так делать?
474 1866580
>>66573
Рендеришь таблицу на данных прошедших через фильтр
475 1866584
>>66573
Ангуляр - это MVC, а не мешанина из говна, как в ванильном.
Т.е. таблица у тебя отображается по модели.

Ставь флаги в модели, в шаблоне их обрабатывай.
Только не display none, это дичь какая-то. У тебя просто строки не должны рисоваться вообще, *ngIf используй или как там оно у вас делается.

Вообще, охуенный вопрос, ты только сегодня Ангуляр для себя открыл?
476 1866590
>>66584
Месяц назад
477 1866595
>>66590
А почему таблицу у тебя представляет "представляет FormGroup конечно"?
Там каждая строка редактируемая? Или это просто таблица для просмотра?
478 1866598
>>66584
>>66573
Короче, посмотрел я этот ваш Angular FormGroup.
То, что ты хочешь, там, похоже, просто не предусмотрено.
Почему я и выбрал Vue, лол.

Вот это посмотри, тут через жопу это делают, и именно скрывая, а не убирая из рендеринга:
https://stackoverflow.com/questions/43025499/angular-2-how-to-hide-controls-using-formgroup?rq=1
479 1866600
>>66595
В каждой строке содержатся данные которые потом надо будет передать на бэк. Примерно так: Имя (приходит с бэка), чекбокс да/нет и поле input с числом score
480 1866601
>>66598
Хм, подход с ngClass вроде норм
481 1866621
>>66601
Он работает, да.
Но, я имел в виду, что там бы не помешало свойство у FormControl типа типа visible или что-то вроде. Но, я думаю, что они не предполагали, что с формами такое будут делать.

>>66573
Я бы вообще предложил тебе не использовать в данном случае FormGroup/FormControl, оно немножко не для этого, мне кажется.
Просто таблица с инпутами, и всё.
Но, я не ангулярщик.

Можешь ещё вот это посмотреть:
https://www.mmbyte.com/article/96378.html
https://stackoverflow.com/questions/53893745/dynamic-angular-form-group-array-with-conditional-show-hide
482 1866636
Блядь, почему когда я дошел до изучения редакса, уровень сложности улетел просто ебанистически вертикально вверх, что за пиздец? Ну да, я понимаю что кодинг дело не просто, но блядь, это же ебануться просто. Какая-то темная магия началась, если с экшнами и редюсерами еще куда ни шло, то потом начинается пиздец с миддлверами, thunk-ом и прочим пиздецом, который я даже на абстрактном уровне понять не могу блядь еб вашу мать. Надеюсь эту ебалу можно будет хуярить просто шаблонами, после чего закрывать стор и вообще блядь не вспоминать о том, что ты туда прописал.
Пиздец.
483 1866637
>>66636
Вас же предупреждали, лол: >>66511
484 1866638
image.png453 Кб, 603x550
486 1866642
>>66636
А, понял, это я еще редакс с роутером не соединял
tenor.gif468 Кб, 320x168
487 1866647
>>66642
>>66636
Пиздос, нашел похожий проект на гитхабе, нашел как там реализуется эта фича через react-router-redux, но в репозитории написано, что это говно уже устарело и нужно было ебаться с connected-react-router при том что я ИЗНАЧАЛЬНО нихуя не понимал того, что вообще нужно делать, и пиздец, это говно заработало и теперь я наконец могу начать ебаться с редухом как следует, ебанный ты в рот, у меня аж голова кружится нахуй. Мне кажется, что всё это заработало просто по случайности
488 1866648
>>66647
Перекатывайся на Vue - на нем все просто и понятно.
489 1866649
>>66648
Но там нет успешного реакт-натива
490 1866653
>>66649

>Но там нет успешного реакт-натива


Пишешь программы для телефонов?
491 1866655
>>66653
Ну выдрочив реакт будут перспективы еще и в этом направлении, а в случае с Vue немного будет уже перспектива. Да и тем более, я УЖЕ разобрался с проблемами, которые у меня возникли
492 1866686
>>66636
Весь код redux-thunk это 14 строчек. Нужно прям очень постараться чтобы найти там какую-то магию.
493 1866706
>>66686
Да вообще все программирование это 10 строк кода, нахуй вообще программисты нужны, да? Ну понятно блядь, что в чем угодно количество_строк строчек кода, если бы все было так просто, хули бы тогда учить было вообще, недельку посидел, и пошел 300к пилить
494 1866707
>>66706
Чего ты горишь-то? 14 это типа не очень много. Функция, блять, с одним if. Просто рокет саенс, обосраться можно пока осилишь.
495 1866710
>>66706

>хули бы тогда учить было вообще, недельку посидел, и пошел 300к пилить


Так и делаю, в чем проблема-то?
496 1866711
>>66707
Да не горю, но давай честно, вокруг этих 14 строк есть еще очень дохуя всего я не понимаю о как 14 идет реч, react+redux+thunk+router и разного рода мидлвары, чтобы объеденить это всё вместе это больше 14 строк, и проблема моя была именно в том, чтобы понять, как всю эту ебалу вместе соеденить, что коннектит одно с другим, пятое с десятым, тридцатое с пятидесятым, и вот после всего этого тебе уже можно начать разбираться в том, как всю приложуху в итоге запилить
497 1866712
>>66710
Так ни в чем, я же за полчаса разобрался, погореть нельзя?
498 1866714
>>66711

>я не понимаю о как 14 идет реч


Я про redux-thunk писал: https://github.com/reduxjs/redux-thunk/blob/master/src/index.js

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

Зачем тебе ротер в редаксе нужен я вообще хз. Чтобы больше заебаться что ли?
499 1866715
>>66714

>Зачем тебе ротер в редаксе нужен я вообще хз


Я вероятно чего-то не знаю, но как ссылки пользователю в бровсере показывать-то?
500 1866717
>>66714

>Ебать, темная магия.


Ну магия была в тот момент, когда это все разом на меня набросили, теперь уже нет
501 1866718
>>66715
Компонентом Link из роутера. Зачем тут редакс?
502 1866721
>>63183
Поставь в браузерлисте last 1 version chrome и всё.
503 1866722
>>66718
У меня в проекте редакс и роутер вместе работают, а линк, тот что в браузере, по мере выполнения разных действий обновляться должен, ну наверное это тоже как то просто делается, но пока я не разобрался, это не так уж и просто
504 1866723
>>66636
А нахуя ты учишь это говно? Учи сразу нормальный стейт-менеджер типа effector, на редаксе и так каждая собака пишет и уже все постепенно с него слезают

А санки - это мидлваря на 10 строк, которая просто typeof action проверяет и если он function, то выполняет, прокидывая внутрь диспатч, а если нет - то диспатчит как всегда
505 1866724
>>66723

>А нахуя ты учишь это говно? Учи сразу нормальный стейт-менеджер


Что в вакансиях требуют, то и учу, уверен потом что-нибудь получше начну учить
506 1866725
>>66724
Нечего там учить, прочитал доку про экшен и редюсер и про санк и вперёд, никто не будет на собесах дрочить коннект роутера к этому говну или ещё что-то, придёш на готовое и будешь диспатчить экшены.
507 1866726
>>66722

>У меня в проекте редакс и роутер вместе работают


Что конкретно они вместе делают? Скорее всего затея так себе.

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


Какое это имеет отношение к редаксу? О чем ты говоришь вообще?
508 1866736
Как быстрее элемент из массива удалить? Найти индекс и splice или фильтром?
509 1866755
>>66736
Фильтр из массива ничего не удаляет
510 1866758
>>66736
https://jsfiddle.net/a8bzmp5v/1/
сплайс быстрее
511 1866770
Добрый день, вкатился на стажировку, а тут на TestComplete автотесты писать, можете что-то посоветовать для базового уровня хотя бы.
512 1866773
>>66758

> performance.now


console.time("label")
...
console.timeEnd("label")
513 1866809
>>66551

>что он термин ООП и ввёл



И что теперь, усраться и трясти его цитатками? Значение термина изменилось и обросло новыми понятиями, это естественный процесс, сычуш.
514 1866812
>>66573
У FormGroup есть метод addControl/removeControl, обрабатываешь ввод в поле поиска, проходишься по контролам и соответственно вызываешь у них addControl/removeControl в зависимости от критериев поиска.
515 1866818
>>66809
Если бы ты соображал, то знал бы, что под ооп и фп есть математическая модель. Эти модели и их термины не меняются и меняться не могут. У вас же кодерков из Computer Science образования только MDN и learn.javascript.
516 1866819
>>66818
Пояснишь за модель то?
517 1866821
>>66818
Ты главное таблетки не забывай пить, а то твои воображаемые математические модели из манямирка в реальный мир уже лезут.
519 1866824
>>66821

>Кукарек<Кококо> кукарек = new Кукарек<>();

520 1866826
>>66823
Ты тапл то читал?
521 1866827
Я знаю, что вопрос оффтоп, но почему гугл не сделает совой поисковик платным? какие-нибудь 3-5 долларов в месяц и все деньги мира их
RtCQAOm[1].png351 Кб, 540x516
522 1866829
523 1866830
>>66827
Ты шо ебанутый?
524 1866832
>>66823
И где по ссылке хоть одно упоминание математических моделей, шизоид?
525 1866834
>>66827
Как только ого станет платным, свою монопольку на поиск он быстро всрет.
526 1866846
>>66832
Дебил, математика и программирование не для тебя.
527 1866852
>>66846
Что и требовалось доказать. Шизоид увидел галлюцинации и удивляется почему другие их не видят.
528 1866861
>>66636
Скорее всего ты обосрался где-то в изначальном продумывании дата флоу
Я как-то сел на рн поделку с парой скринов остановившихся на мокапной логике, пришлось перекручивать полпроекта. Ещё и стоящая коннект либа задепрекейтилась, и нормального стоража не было, ставил какую-то дрисню https://github.com/rt2zz/redux-persist (по-моему с 10к звёздочками, ласт упдейтом год+ назад и полтысячами ищью-реквестов отражает всю суть рн)
Какой-то подобный геморрой тоже был >>66647
Пердолил 3 недели и соскочил хорошо хоть плотили раз в неделю и вроде не баттхёртили, с тех пор к реакту не прикасался
EnwINdnXIAAxGBn.jpeg13 Кб, 680x170
529 1866922
530 1866923
>>66922
А ты продай null
531 1866931
>>66852
Тупой и слепой неуч, ссылки на литературу видел?
https://core.ac.uk/download/pdf/10180049.pdf
532 1866937
>>66931
Так ты сам-то чего-нибудь расскажешь? Или ты написал словосочетание со словом математика и мы растаять должны?
533 1866945
>>66922
Нулл это 0
0 это число
Число - это математика
У где математика, там и модели

Что и требовалось доказать.
534 1867019
>>66945
Мы вам перезвоним.
535 1867044
>>66818
Чувак, математическу модель можно сделать для чего угодно.
И само это слово может значить что угодно.
И даже слово "математика" может значить ну просто очень разные вещи.

А ООП и ФП - это просто ярлыки, которые тоже могут обозначать разное.
Так что, не еби людям мозг, пожалуйста.
536 1867050
>>66923
Null is the billion dollar mistake (Tony Hoare)

Но, я готов отдать за полцены, ибо чёрная пятница.
537 1867078
>>67050
Ты null от null pointer отличить не можешь?
538 1867097
>>67050
Все говорят null, а ты продай null
539 1867108
Зачему нужен null, когда есть underfine?
540 1867110
>>67108

>underfine


Нет такого
541 1867115
>>66937
Щас бы отчитываться перед ебанатом каким то.
542 1867120
>>66937
>>66832
>>66852
Знатно ты переобулся. Сразу по другому кукарекать стал.
543 1867122
>>67120
Ты совсем ебанат? Нас тут не двое
544 1867134
>>67122
Да мне похуй
545 1867184
Салют бандиты, нужен бот для тг чтобы с периодичностью в час рассылать по всем своим группам добавленным текст с рекламой
Это же должно быть просто как ебать, но нихуя не понятно че куда, в писанине не понимаю нихуя.
https://github.com/Javojav/Floot_Bot
Нашел вот это а как юзать то?
546 1867187
>>67184
не то прицепил, вот эта
https://github.com/azat-io/spam-tg-bot
547 1867213
>>67184

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


Анус свой разошли, пёс.
548 1867316
>>67213
Мне по группам по продаже кросс раскидывать объявления я не черт честна
549 1867388
boolean
550 1867488
Можно ли как то через map вернуть сразу несколько запросов с помощью axios, или это хуита и так делать не нужно? Мне прилетает массив из промиссов, и я не знаю как блядь получить массив из конечных значений
551 1867489
>>67488
Так ладно, нашел, что можно этот массив с прописами разпромисить с помошью Promise.all, но это хуйня наверное даже в этом случае?
552 1867492
>>67489
Нет, это не хуйня, Promise.all() именно для этого.
553 1867494
>>67488
У тебя есть массив каких-то объектов (параметров?) и ты его через map превращаешь в массив промисов?

В принципе, ничего плохого в этом нет, наоборот, это может быть хорошим решением - параллельные запросы будут быстрее.
Но, ещё лучше было бы заменить это одним запросом, если это запрос к одному серверу, и сервер твой - вернуть всю пачку в одном ответе.
554 1867497
>>67494
>>67492
Есть массив айдишников, и нужно по каждому айдишнику получить ответы с сервера, и вот чтобы их все одним разом получить и записать в глобал стейт, я их сначала через map запрашиваю, и промисы в один масив пихаю. Но судя по вашим ответам, все сделал правильно. И в общем-то не мог понять только то, как эти промисы превратить в финальные объекты.

А по поводу одного запроса, а эта поддержка должна быть у сервера, или как-то по хитрому запрос нужно сделать просто?
555 1867506
Как на Vue сделать гибрид чекбокса и радио?

То есть, есть два чекбокса, по умолчанию оба не выбраны. Выбрать можно только один. Но можно снять оба выделения.
556 1867508
>>67497
Сервер должен это поддерживать (API), почему я и написал - если это твой сервер.

>>67506
Это не гибрид чекбокса и радио.
Это два чекбокса с определённой логикой.
Надо хранить состояние чекбоксов в data, привязать через v-model и менять через @change="onChange($event)".

Вот пример работы с чекбоксами по подобной схеме, делает он другое, естественно:
http://jsfiddle.net/eLzavj5f/
557 1867509
>>67506
Привязывайся к событию клика и меняй значение checked на противоположное предидущему. Либо можешь еще одну кнопку добавить с значением none
558 1867511
>>67509
Ты Vue-то видел вообще?

>>67506
Кстати, @click _не_ надо использовать в таком случае, это событие возникает раньше, чем изменяется модель.
559 1867517
>>67511
Нет, конечно, но никогда не поздно перейти на божественный ангуляр.
560 1867521
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
ПЕРЕКАТ >>1867518 (OP)
561 1868310
>>66584
И где там MVC то?
562 1869139
>>65122

>При строке в 10000500 чаров у тебя коллизий в хештаблице будет жопой жуй.


А если они уникальные в строке, эти чары?

>Нужно использовать 'str'.includes


А он быстрее indexOf?
Всё-же оставил IndexOf:
https://github.com/username1565/BigInteger.js/blob/2b2057db04a32996247f2d1182511b6f2fe82395/BigInteger.js#L2561
А то было так:
https://github.com/peterolson/BigInteger.js/blob/2c922709216d64b499bee1eda3172c3bb1b8fca8/BigInteger.js#L1199-L1206
замеры скорости, показали, что на генерацию объекта - уходит дополнительное время.

>>65123

>Можешь попробовать сортануть и искать бинарно.


Хз как это.
>>65130
Эт понятно. Как видишь, для ускорения, я думал регекспом тестить,
но при большой строке - она просто не лезет в регексп:

>RegExp too big


пишет.
563 1869141
>>65120
map быстрее indexOf что-ли?
564 1869145
Ананасы, кто с firebase realtime db работал?

Как валидируют там запросы на запись?

Пример:
var playersRef = firebase.database().ref("players/");

playersRef.set ({
John: {
number: 1,
age: 30
},
});

Вот этой операцией set я перетру все сохраненные данные.
Как ее запретить, а оставить только update???
565 1870090
:React.FC<any>
Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 22 апреля 2021 года.

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

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