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

JS Thread #207 /js/

 Аноним 23/03/21 Втр 21:49:02 #1 №1975601 
image
Предыдущий тред: >>1971255 (OP)
Больше пары строк кода в посте или на скриншоте ведут в ад.

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

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

Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
Старая паста - https://pastebin.com/9yRADC0s
Аноним 23/03/21 Втр 21:52:33 #2 №1975604 
16060938858540.png
Аноним 23/03/21 Втр 21:53:23 #3 №1975607 
Приветствую, кто-то вкатывался по freecodecamp? Стоит того, или другой какой-то ресурс выбрать?
Аноним 23/03/21 Втр 22:17:02 #4 №1975623 
>>1975607
стоит пойти нахуй
пойти нахуй
Аноним 23/03/21 Втр 22:18:13 #5 №1975624 
>>1975582 →
let fn = {
'+' : (x, y) => x + y,
'-' : (x, y) => x - y,
};
let a = 1;
let b = 2;
let c = '+';
console.log(fn[c](a, b));

Нихуясе, сам не ожидал что так можно
Аноним 23/03/21 Втр 22:18:44 #6 №1975626 
>>1975607
Html/css там выучил. Про Js там слишком мало. Нужно будет вкупе с learn.js учить. Про остальные темы не скажу. Реакт учу по ютубу и документации
Аноним 23/03/21 Втр 22:22:21 #7 №1975630 
>>1975623
встретил там тебя, больно лицо у тебя довольное было, решил не мешать
Аноним 23/03/21 Втр 23:33:27 #8 №1975688 
>>1975607
Главное что тебе нужно сделать - не сидеть здесь и не слушать советов местных нытиков и инцелов. Нашел себе среду конечно, в которой советов по развитию будешь спрашивать. Не важно где ты будешь получать знания, общий объем знаний, который тебе предстоит получить конечен. А вот получать каждый день дозу дизморали от местных дегенератов тебе точно не нужно, и дегенераты здесь самые настоящие, без какой-то иронии.
Аноним 23/03/21 Втр 23:40:18 #9 №1975691 
>>1975688
Инцел спок. Не мешай чедам обсуждать язык и алгоритмы
Аноним 24/03/21 Срд 01:05:40 #10 №1975757 
>>1975604
Ох двачую, как же этот ТС порой заебывает бессмысленной хуетой, это пиздец
Аноним 24/03/21 Срд 01:47:34 #11 №1975768 
>>1975607
многие
это хороший ресурс
Аноним 24/03/21 Срд 04:12:27 #12 №1975796 
>>1975757
Может, надо было кассиром в пятёрочку идти?
Но, там тоже заёбывают бессмысленной хуетой.
Куда деваться?
Аноним 24/03/21 Срд 05:00:00 #13 №1975805 
>>1975796
Это какой-то самоподдув продавца из пятерочки? В каждом треде одно и то же пишешь
Аноним 24/03/21 Срд 05:02:48 #14 №1975808 
>>1975805
Ну ему кажется что это очень смешно и остроумно
Аноним 24/03/21 Срд 05:53:25 #15 №1975815 
>>1975805
>>1975808
Проиграл с этого туповатого шизика. Типо совсем незаметно семенит.
Аноним 24/03/21 Срд 05:59:45 #16 №1975818 
>>1975607
Стоит, но:
1. Там нет ни слова про DOM
2. В курсе по Реакту не учат хукам
Аноним 24/03/21 Срд 09:04:22 #17 №1975856 
Как добавить методы к объекту который создается:

test = document.createElement("div");

чтобы можно было написать test.delete() например?
Аноним 24/03/21 Срд 09:08:29 #18 №1975857 
>>1975856
Читай доку долбоёб
Аноним 24/03/21 Срд 09:46:12 #19 №1975874 
>>1975857
Спок, it петух, я разобрался почему не работало (div был поверх innerHTML).

я бы не спрашивал если бы все так просто было
Аноним 24/03/21 Срд 09:57:53 #20 №1975883 
Видели уже эту няшу https://github.com/clio-lang/clio ?
На воркерах хуячит.
Аноним 24/03/21 Срд 10:04:30 #21 №1975887 
>>1975856
test.delete = () => console.log('delete');
test.delete()
Аноним 24/03/21 Срд 12:33:38 #22 №1976056 
>>1975856
Не надо их к нему добавлять.
Элемент сам себя удалять не должен, это грех.
Аноним 24/03/21 Срд 12:47:50 #23 №1976065 
>>1976056
>Элемент сам себя удалять не должен, это грех.

https://developer.mozilla.org/ru/docs/Web/API/ChildNode/remove
Аноним 24/03/21 Срд 13:38:50 #24 №1976104 
>>1976065
Так это говнокодеры же.
Аноним 24/03/21 Срд 15:34:32 #25 №1976245 
redux.png
Держал страничку туториала по редуксу открытой более 5 минут.
Аноним 24/03/21 Срд 15:39:42 #26 №1976254 
IMG20210324153713.jpg
IMG20210324153641.jpg
IMG20210324153617.jpg
Три скрина - код, ответ, ожидаемая информация.
Почему код не работает как ожидается? Почему возвращается Object, а не его (его?) содержимое?
Аноним 24/03/21 Срд 15:40:55 #27 №1976260 
>>1976254
алерт кастит в строку
Аноним 24/03/21 Срд 15:42:00 #28 №1976267 
>>1976254
Да.
Аноним 24/03/21 Срд 15:46:39 #29 №1976279 
>>1975883
Нахуя, если есть пистон? У пистона матлиба есть, которая работает на уровне С иногда быстрее. У этого клаа нет ничего. Совсем ничего.
Аноним 24/03/21 Срд 17:35:57 #30 №1976473 
>>1976279
>>1975883
Нахер не нужно, т.к. для мат вычислений еще играет фактор удобства. Как сказали выше питон тупо удобнее, лучше поддерживается и имеет в разы больше фич/либ
А есть хочешь обмазаться параллельными вычислениями то есть numba
Аноним 24/03/21 Срд 17:57:24 #31 №1976488 
Ебучий редакс.
Опять надо добавить флажок, опять надо ебануть штук 5 файлов и с десяток однотипных функций потому-что АРХИТЕКТУРА.
Аноним 24/03/21 Срд 17:59:18 #32 №1976493 
1715971.jpg
>>1976488
>Опять надо добавить флажок, опять надо ебануть штук 5 файлов и с десяток однотипных функций потому-что АРХИТЕКТУРА
Аноним 24/03/21 Срд 18:00:23 #33 №1976495 
>>1976488
Зато ты этот флажок сможешь менять из любого места, даже с Луны
Аноним 24/03/21 Срд 18:02:07 #34 №1976498 
>>1976495
Но мне надо только из одного.
Аноним 24/03/21 Срд 18:34:17 #35 №1976534 
>>1976488
Не пользуйся редаксом, делов-то. Он очевидно для пидоров, вон >>1976493 анон правильно запостил.
Аноним 24/03/21 Срд 18:43:15 #36 №1976542 
ExQONbVWYAEW700.png
Лердорф шутит в твиттере.
Аноним 24/03/21 Срд 18:48:34 #37 №1976547 
>>1976542
> Лердорф
Кто это? Твой одноклассник, с которым на переменке среакт друг-другу устанавливаете?
Аноним 24/03/21 Срд 18:52:54 #38 №1976553 
>>1976542
В этих контейнерах вяленая слонятина
Аноним 24/03/21 Срд 18:54:41 #39 №1976555 
>>1976542
Иди нахуй
Аноним 24/03/21 Срд 20:14:41 #40 №1976615 
анонсы, хочу с пыхи съехать на ноду 2 года коммерческкой разработки. решил по рофлу закинуть резюмеху на хх и там вот скинули тестовое довольно таки простое: нужно сделать аля микросервис для парсинга doc, docx документов и возвращать ответ в json в виде {"1": "первая страница", "2": "вторая страница"}. вопрос к знатокам: что лучше для этого юзать? пока вижу три стула: голая нода но тут возможны какие то проблемы + много кода, экспресс упростит мне какие то моменты но проблема в том что он давно уже не обновлялся, и Nest.js который имеет все из коробки, модный и молодежный, но оправданно ли его использование в такой мелкой хуйне + тут еще придется подзапарится с тайпскриптом. аноны, реквестирую ваши советы
Аноним 24/03/21 Срд 20:20:56 #41 №1976621 
>>1976615
Ты с doc парсингом уже разобрался?
Аноним 24/03/21 Срд 20:54:56 #42 №1976656 
>>1976621
нет, а стоит с него начинать? я просто думал для начала стоит выбрать инструмент который поможет мне развернуть хост ну и затем уже прокинуть роуты. а там уже буду в контексте реквеста парсить
Аноним 24/03/21 Срд 21:25:27 #43 №1976672 
Хули так сложно бля - https://ru.reactjs.org/docs/lifting-state-up.html
Все было легко читаемо кроме этой главы, толи там примеры ебаные, с обосраными цельсиями/фаренгейтами, толи объясняют мудрено.

Есть более внятное объяснение всплытия событий? В теории понимаю что управляются с самых верхних пропсов, но примеров бы пощумать погуманнее чем в официальной доке.
Аноним 24/03/21 Срд 21:40:28 #44 №1976676 
>>1976672
Там не про всплытие событий
Аноним 24/03/21 Срд 21:45:12 #45 №1976680 
>>1976676
Да я в курсе, прост ошибся в названии, не вслытие, а Подъём состояния, когда дочерние компоненты управляются родительскими компонентами. Суть не в этом. Есть статейки какие-нить по этой теме внятные?
Аноним 24/03/21 Срд 21:56:21 #46 №1976687 
image.png
>>1976680
Нет, статейки уже поздно, пиши код
Что ты не понял?
Аноним 24/03/21 Срд 22:03:44 #47 №1976690 
>>1976687
Да все я понял. Ладно, буду ковыряться в доке по каждому пунктику вычитывать.

А че значит статейки уже поздно?
Аноним 24/03/21 Срд 22:05:56 #48 №1976692 
>>1976687
А не погоди, а как коллбек отдает setState наверх?
Аноним 24/03/21 Срд 23:09:49 #49 №1976732 
>>1976615
Нахуй тебе с пыхи на ноду съезжать, совсем пизданулся что ли. Она еще медленнее чем пыха. Съезжай на си, плюсы, эликсир.
Нода нужна как прост для генерации кэша страниц, например.
Аноним 24/03/21 Срд 23:43:40 #50 №1976743 
>>1976732
бабки + проекты в норм конторах. практика показывает что у бэк нод разрабов зп выше чем у пхп разрабов + требования меньше. алсо учитывай что пыха это в основном малый и средний бизнес из за чего денег толком нет, а все задачи сводятся к крудошлепству.
и че значит медленнее ? читал что интерпритатор js работает быстрее чем пыховский.... + есть асинхронность из коробки
Аноним 25/03/21 Чтв 00:16:45 #51 №1976754 
>>1975601 (OP)
Как в ангуляре выполнять валидацию строго на моменте отправки формы?.. Есть подписка:

this.form.statusChanges.subscribe(this.myCallback)

Но она блин вызывается на любом изменении данных формы
Аноним 25/03/21 Чтв 00:30:17 #52 №1976765 
>>1976672
что непонятного, передается пропсами какое-то поле стейта родительского компонента и функция менять это поле в родительском компоненте
Аноним 25/03/21 Чтв 00:33:10 #53 №1976766 
>>1976692
он его не отдает, он его меняет по ссылке прямо изнутри другого компонента

это к вопросу типа функциональности реакта лол, во вью это через пользовательские события делается, без грязного мутирования
Аноним 25/03/21 Чтв 00:36:11 #54 №1976768 
>>1976254
alert(JSON.parse(data))
Аноним 25/03/21 Чтв 00:42:23 #55 №1976773 
>>1976754
Прост показывай свои сообщения только когда form.submitted
Аноним 25/03/21 Чтв 05:40:32 #56 №1976831 
>>1976766
>во вью это через пользовательские события делается
Как что-то хорошее.
Аноним 25/03/21 Чтв 05:42:34 #57 №1976833 
>>1976831
подписываться на события лучше чем мутировать стейт кросскомпонентно
Аноним 25/03/21 Чтв 08:59:54 #58 №1976890 
>>1976833
Угу, хуярить два колбэка строчными референсами, чтобы мутировать стейт, конечно же лучше, чем передавать колбэк конкретно объявленного скоупа.
Аноним 25/03/21 Чтв 09:52:17 #59 №1976908 
>>1976890
мутировать стейт между компонентами плохо
кстати так можно и во вью делать но сочтут говнокодом
Аноним 25/03/21 Чтв 11:39:08 #60 №1976980 
Ачто, в реакте нет сервисов с observables?
Аноним 25/03/21 Чтв 12:18:04 #61 №1977006 
>>1976980
Сервисы не зона ответсвенности реакта, мань.
Аноним 25/03/21 Чтв 13:09:19 #62 №1977049 
>>1975604
some.js ...
(method) Document.write(...text: string[]): void
автокомплит-то через TS
Аноним 25/03/21 Чтв 15:24:01 #63 №1977150 
45244345.png
Господи, какая же срань этот Jest, ну просто 10 из 10.
Аноним 25/03/21 Чтв 15:56:08 #64 №1977196 
>>1976894 →
Каво? Он во всех браузерах кроме ие есть, а в стандарте уже год с хуем.
По твоей ссылке это и сказано.
https://github.com/tc39/proposals/blob/master/finished-proposals.md
Аноним 25/03/21 Чтв 16:15:45 #65 №1977229 
Планирую писать индексер файлов для менеджмента пака картиночек&видео на ноде. Какие подводные? Мне пизда, или производительность и ресурсопотребление самого V8 не сильно отличается от традиционных языков, а блоат жрущий гигабайты рам это чисто браузерные рендереры?

Справедливо заметить, что фронт-то всё равно придётся для него делать, но я мечтаю не юзать для этого электрон, а чё-нить нативное, а там хуй знает.
Аноним 25/03/21 Чтв 16:21:04 #66 №1977237 
>>1976980
Реакт это буквально одна функция для менеджмента дерева объектов и пара хелперов для неё. Всё остальное добавяешь отдельно и самостоятельно, включая рендер - react-dom, react-native, ink и т.д.
Аноним 25/03/21 Чтв 16:37:20 #67 №1977269 
>>1977229
Никаких подводных. Берешь и пишешь
Аноним 25/03/21 Чтв 16:51:40 #68 №1977302 
В javascript можно как-нибудь отлавливать то что делает псевдокласс :focus-within? Хочу onblur/onfocus функцию на контейнер пока внутри у него у какого-то элемента есть фокус.
Пока что ничего умнее не предумал чем по :focus-within менять цвет и проверять его (пока он подсвечен этим цветом, значит какой-то элемент внутри в фокусе).
Аноним 25/03/21 Чтв 17:01:30 #69 №1977328 
>>1977302
element.contains(document.activeElement)
Аноним 25/03/21 Чтв 17:27:28 #70 №1977354 
Фронтач, а что с этим ебучим реселектом мне надо в сторе хранить мусор, чтобы все работало? А как же принцип, что стор надо держать минимальным? Например, у меня есть список и мне его надо по фильтрам прогнать, вроде реселект как раз подходит, но мне в глобал стор теперь мусорную инфу о фильтрах сохранять приходиться.
Аноним 25/03/21 Чтв 17:34:26 #71 №1977361 
>>1977354
>Фронтач
А ты туда ли зашел, петушок?
Аноним 25/03/21 Чтв 18:00:03 #72 №1977390 
>>1977354
Надо отфильтровать список
@
Возьму библиотеку для мемоизации
Аноним 25/03/21 Чтв 18:38:05 #73 №1977402 
>>1977237
Пиздос...ну его нахуй
Аноним 25/03/21 Чтв 18:48:46 #74 №1977413 
Я правильно понял, что все эти вскукареки ректовских 18 летних сеньеров по поводу недопустимости делать style={{...}} и onClick={()=>{...}} это фантазии и шиза? Есть хоть одна статья с бенчмарками и сравнением?
Аноним 25/03/21 Чтв 18:57:37 #75 №1977418 
>>1977413
style в jsx - нужен только для управления состояний стиля(тему с белой на черную поменять и т.д)
Основной код должен находиться в css - так легче потом рефакторить всю аппу.

Тут речь ен про производительность а про DRY метод который FaceBook советует юзать
Аноним 25/03/21 Чтв 20:18:19 #76 №1977464 
1.mov
image
Анончик! Можешь за меня порадоваться. Я 2 месяца учил JS, 5 дней как учу React, сегодня дочитал доку. И решил сам сделать своими руками компонент.
В итоге вот че получилось, анончик.
Сам с нуля написал. И стили и код, (стили срисовывал с двача, юзал пипетку).
Под капотом говно код с одним классом на 70 строк .
По ходу обучения я понял что надо будет потом отрефакторить на чистые функции и декомпозировать это все. Пока вот так.

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

Порадуйся за меня анончик! Я так рад. Впереди столько интересного!
Аноним 25/03/21 Чтв 20:19:43 #77 №1977468 
>>1977464
Рад за тебя анон! красиво скопировал дизайн
Аноним 25/03/21 Чтв 20:22:46 #78 №1977473 
Стикер
>>1977468
Спасибо.
Аноним 25/03/21 Чтв 22:31:40 #79 №1977592 
>>1977328
Почитал про bubbling phase и родил:
base_item_node.addEventListener("focusout", e => base_item_node.active(false));
base_item_node.addEventListener("focusin", e => base_item_node.active(true));
Аноним 25/03/21 Чтв 22:53:36 #80 №1977602 
>>1977229
Наверни node-webkit, базарю, еще захочешь. Блоата не подвезли, зато интеграцию браузера и ноды - исчо как.

а гигабайты - это когда ты на реакте тысячу экранов хранишь
Аноним 25/03/21 Чтв 23:39:12 #81 №1977622 
>>1977602
>node-webkit
Как там в 2013ом?
Аноним 26/03/21 Птн 02:58:37 #82 №1977724 
Как лучше собирать react проект? C вебпаком или create-react-app?
Аноним 26/03/21 Птн 05:15:26 #83 №1977763 
>>1977622
Заебись, всё удобно и не лагает.
Аноним 26/03/21 Птн 06:39:00 #84 №1977796 
>>1976245
Бля, как же я проигрываю от того, что ещё три раза такая утечка памяти произошла, при том что не открывал более одной странички, то есть каноничный СПА экспириенс. Просто вся суть реакто-редукса спа говна, даже сраная дока не может удержаться от пожирания памяти.
Аноним 26/03/21 Птн 06:43:17 #85 №1977798 
>>1977724
Сам-то как думашь? С вебпаком ты сможешь не только среакт собирать. Хотя я уже 1000 пакетов в своём реактопроекте поставил из-за ватаги лоадеров/плагинов/пре-/постпроцессоров. Что впрочем в два раза ниже 2к у CRA.
Аноним 26/03/21 Птн 10:32:00 #86 №1977891 
>>1976754
<form [formGroup]="profileForm" (ngSubmit)="onSubmit()">
Аноним 26/03/21 Птн 12:01:51 #87 №1977961 
Есть ли разница в плане скорости отправки запросов, если я отправляю их по очереди через await или одновременно внутри Promise.all()? Интуитивно кажется что второй вариант быстрее, но по факту ведь объем информации и скорость интернета одни и те же.
Аноним 26/03/21 Птн 12:08:28 #88 №1977967 
>>1977961
>одновременно внутри Promise.all()
this^. У тебя кроме скорости интернета есть еще такая хуйня как установка коннекта, это если не сильно вдаваться в низкоуровневую хуйню. Так вот часто установка коннекта дороже чем передача твоих 5кб жсона
Аноним 26/03/21 Птн 14:57:28 #89 №1978071 
Screenshot1.png
Как выскакивают такие окна с рекламой. Запрещены же всплывающие окна. Как это обходят?
Аноним 26/03/21 Птн 15:22:55 #90 №1978083 
>>1978071
во первых это target="_blank" для страницы
во вторых пошел нахуй отсюда
Аноним 26/03/21 Птн 16:01:53 #91 №1978120 
>Объект Proxy позволяет создать прокси для другого объекта
Охуенно написано в стиле java pomoika
Аноним 26/03/21 Птн 16:16:02 #92 №1978133 
Если я вместо редукса буду использовать useReducer, где стейт - объект примерно такого вида: {state: [huita], addHuitaForm: {linkToHuita: "", descriptionOfHuita: "", huitaForShow: [JSX.Element] }}. И буду контекстом его туда-сюда гонять. В каком-то компоненте нужен state, в каком-то объект формы, в каком-то для рендера huitaForShow. Это норм будет? Сам редюсер будет, например, в App.
Аноним 26/03/21 Птн 16:19:43 #93 №1978137 
232533394-37b34b415114c43fa9aaa214c9e941fd.jpg
>>1978083
Во-первых спасибо.
Во-вторых говна поешь.
Аноним 26/03/21 Птн 16:22:48 #94 №1978146 
>>1978133
>huitaForShow: [JSX.Element]
Ты там совсем говна въебал?
Аноним 26/03/21 Птн 16:28:27 #95 №1978160 
>>1978133
>норм
Лишь бы это не вызывало проблем
Аноним 26/03/21 Птн 16:31:22 #96 №1978165 
>>1978146
> совсем говна въебал?
А что не так? У меня формируется элемент для рендера. Часть данных из базы, часть с левого сайта по апи, часть забивается пользователем, потом все собирается в массив и загоняется в стейт, чтобы без обновления страницы ре-рендерить элементы. SSRа нет. Есть идеи получше?
>>1978160
Ну вот и посмотрим сразу. Проект - пет, что хочу то и кручу. Меня интересует больше использование единого стейта на все приложение без редукса. Это норм?
Аноним 26/03/21 Птн 16:38:28 #97 №1978172 
>>1978165
>А что не так?
То что ты JSX элемент хранишь в стейте
http://web.archive.org/web/20150419023006/http://facebook.github.io/react/docs/interactivity-and-dynamic-uis.html
В самый низ.
Аноним 26/03/21 Птн 16:40:47 #98 №1978176 
>>1978165
>часть
В чем проблема хранить эти части в разных стейтах? Для этого и существуют стейт менеджеры
Аноним 26/03/21 Птн 16:41:58 #99 №1978177 
>>1978165
>Проект - пет, что хочу то и кручу
И да, с такими мыслями хуя пососешь, когда работодатель зайдет в твой код и увидит ЭТО
Аноним 26/03/21 Птн 16:43:49 #100 №1978178 
>>1978172
Ок, как мне организовать ререндеринг элемента без обновления страницы, кроме как засунуть элемент в стейт? Скажем есть список (корзина) куда динамически нужно добавлять элементы. И при этом это не строчка "говно на лопате", которую можно "просто" отрендерить, а карточка товара. Как тут обойтись без стейта? И почему статья такая древняя.
Аноним 26/03/21 Птн 16:44:45 #101 №1978183 
>>1978177
Да я не буду это коммитить и все блять, какие проблемы.
Аноним 26/03/21 Птн 16:51:15 #102 №1978189 
>>1978178
> И почему статья такая древняя.
Потому что первая в гугле по запросу "jsx element in state"
>ререндеринг элемента без обновления страницы
Подключить реакт, внезапно, и желательно еще прочитать блять документацию от начала до конца, чтобы не воротить хуйни
>>1978183
Тот факт, что ты хочешь сделать вот это все выдает в тебе незнание

Ответ на твой вопрос, как всё сделать: подключить Redux в идеале, если ты не хочешь делать с ним, то юзай Context API, оберни весь App в Context.Provider и передай туда глобальный стейт приложения с диспатчером от useDispatch, а когда надо будет что-то поменять, то useContext и диспатчишь какой-нибудь экшн
Но как я сказал, лучше редакс, дабы не ебать себе всем этим мозг, разбирайся
https://blog.logrocket.com/use-hooks-and-context-not-react-and-redux/#usecontext
Аноним 26/03/21 Птн 16:57:32 #103 №1978198 
>>1978189
>Подключить реакт, внезапно
Нихуя себе, правда? Блять точно, ну пиздец, как я мог забыть реакт подключить, точно, сейчас подключу пойду. А каким образом реакт без стейта будет динамически обновлять компонент? Везде написано, что что бы что-то обновить на лету нужно это что-то сделать стейтом, не?
>если ты не хочешь делать с ним, то юзай Context API, оберни весь App в Context.Provider и передай туда глобальный стейт приложения с диспатчером от useDispatch, а когда надо будет что-то поменять, то useContext и диспатчишь какой-нибудь экшн
То есть сделать в точности до последнего символа кода то, что я и собирался сделать, и то что ты назвал "хуевый код"?
Аноним 26/03/21 Птн 17:05:54 #104 №1978208 
>>1978198
>без стейта будет динамически обновлять компонент? Везде написано, что что бы что-то обновить на лету нужно это что-то сделать стейтом, не?
Ну, ты передаеь в компоненты через useContext значение из глобального стейта и обновив глобальный стейт, они тоже обновятся, магия да?
Аноним 26/03/21 Птн 17:13:51 #105 №1978213 
>>1978208
Подожди.
Вот есть стейт, в стейте лежит массив каких-то данных, собранных хуй пойми откуда. Через useEffect при изменении этих данных происходит изменение списка элементов (который не является стейтом) blahblah.map, например, который возвращает уже JSX.Element. И в ретурне компонента рендрится список элементов, который не стейт. Так?
Ок, пример с корзиной, если я уберу из стейта данные для какого-то товара, то на экране ведь не произойдет изменений, потому что список - не стейт. Произойдут изменения при обновлении страницы, но пока пользователь не нажмет F5 все будет как есть, а если он 2 раза удалит один и тот же айтем (которого уже нет), то скрипт вообще сфейлится.
Аноним 26/03/21 Птн 17:20:31 #106 №1978226 
>>1978213
>то на экране ведь не произойдет изменений, потому что список - не стейт. Произойдут изменения при обновлении страницы
Сука, пиздуй читать документацию, а не фантазировать, что как работает.

>useContext
>Accepts a context object (the value returned from React.createContext) and returns the current context value for that context. The current context value is determined by the value prop of the nearest <MyContext.Provider> above the calling component in the tree.

>When the nearest <MyContext.Provider> above the component updates, this Hook will trigger a rerender with the latest context value passed to that MyContext provider. Even if an ancestor uses React.memo or shouldComponentUpdate, a rerender will still happen starting at the component itself using useContext.

Аноним 26/03/21 Птн 17:22:51 #107 №1978229 
>>1978226
Ты заебал со своим контекстом блять. Его неделю назад добавили, представь что у тебя его нет нахуй, но есть необходимость изменять дом, и чтобы это мгновенно увидел пользователь.
Аноним 26/03/21 Птн 17:28:07 #108 №1978234 
>>1978229
>Его неделю назад добавили, представь что у тебя его нет нахуй,
Понимаю)
https://5a046bf5a6188f4b8fa4938a--reactjs.netlify.app/docs/context.html
>v 16.0.0
>неделю назад
Аноним 26/03/21 Птн 17:28:40 #109 №1978236 
Какие ряктеры дегенераты, пиздец просто...
Аноним 26/03/21 Птн 17:30:51 #110 №1978239 
>>1978234
Блять ну неужели нет никакого третьего пути? Без редукса и контекста? Чем так плохо засовывания JSX элемента в стейт? В той статье нихуя не написано кроме "пук пук это плохо пнтяненько". Я вот только что так сделал и заметил 0 негативных эффектов.
Аноним 26/03/21 Птн 17:33:27 #111 №1978241 
>>1978239
Ой всё бля, иди уже делай как хочешь
Аноним 26/03/21 Птн 17:35:50 #112 №1978244 
>>1978241
Блять, ну а если серьезно? Всегда все через контекст? А как блять ререндерили когда не было ни контекста, ни редукса. 16 версий же реакт как-то пропердел без этой хуйни.
Аноним 26/03/21 Птн 17:43:09 #113 №1978262 
>>1978244
Он был большинство времени реакта, есть путь как делать без этого всего: пробрасывание пропсов через все компоненты в нужный, так же и методы из послежднего компонента пробрасываешь вверх, но это настолько обосрамс и тонны лишнего кода, что охуеешь. Если у тебя неебаться вложенность (в крупных приложениях чаще всего, а не туду лист, где только 2 компонента List и Task)
гугли react props drilling , that is the way
Аноним 26/03/21 Птн 17:48:00 #114 №1978267 
>>1978262
Бля, не, ну это совсем кал.
Ну лан, только 2 путя, значит 2 путя.
Я теперь буду пихать редукс в каждое приложение, т.к. не хочу ебаться с контекстом, уж лучше бойлерплейт каждый раз писать. Норм?
Аноним 26/03/21 Птн 17:59:37 #115 №1978278 
>>1978267
Я тебе еще раз говорю, ты щас как слепой котенок который мечится туда сюда, пытаясь дойти до миски с молоком, ты сначала глаза открой.
Можешь скачать какой-нибудь полный курс по react/redux, где тебе сначала покажут реакт, а потом редакс и вообще почему так, а не иначе
Ну и парарллельно читай документацию по реакту и редаксу, там немного
В видео-курсах обычно пишут приложуху, вот напишешь параллельно преподу, вникая во все, а потом уже как будет понимание, как надо примерно делать идешь пилить свои корзины и интернет магазины
>Я теперь буду пихать редукс в каждое приложение
Ну если тебе нужен глобальный стейт доступ в который надо предоставить всем компонентам без ебли, то да, а если у тебя микроприложение, то можно обойтись пропсами или контекстом
>уж лучше бойлерплейт каждый раз писать
Если ты под бойлерплейтом понимаешь архитектуру проекта, то она примерно одинаковая, но там много подходов по разбиению кода. Имхо самый норм, это отдельную папку под store, а там под каждый раздел стора папочку с actions и reducers, можешь отдельно разбить actions и reducers без компонентов, но мне кажется это дрочево, т.к сразу видишь где какой объект стейта

Аноним 26/03/21 Птн 18:07:50 #116 №1978287 
>>1978278
>Можешь скачать какой-нибудь полный курс по react/redux, где тебе сначала покажут реакт, а потом редакс и вообще почему так, а не иначе
>Ну и парарллельно читай документацию по реакту и редаксу, там немного
Ты реально думаешь что я всем этим не занимался? В курсах так-то если что JSX в стейт пихают и в хуй не дуют, а в целых двух курсах, которые я смотрел, сказали, что контекст говно говна и нахуй не нужен. Я это как бы не сам придумал блять.
А в доках просто огрызки инфы уровня: "как это работает". Ну ладно, я знаю как это работает дальше что? Никаких бест практис там нет, итого я с довольным ебалом совал в стейт JSX пока на сосаче не сказали, что так не делается.
Аноним 26/03/21 Птн 18:18:04 #117 №1978303 
>>1978287
>В курсах так-то если что JSX в стейт пихают и в хуй не дуют, а в целых двух курсах, которые я смотрел, сказали, что контекст говно говна и нахуй не нужен.
Что за курсы такие мне даже интересны и где ты их откопал, где такое говорят
>А в доках просто огрызки инфы уровня
Отчасти соглашусь, для этого существуют статейки на Medium и прочее
>Никаких бест практис там нет
Опять же, статейки. В доке редакса есть recipes, полезный раздел очень
>пока на сосаче не сказали
Да это не на сосаче сказали, это само собой разумеется, я тебе кидал даже ссылку на доку, где написано что к чему
Я даже никогда не видел в жизни, чтобы в стейт кидали компоненты, это полный нонсенс
Аноним 26/03/21 Птн 18:24:21 #118 №1978312 
>>1978303
>Что за курсы такие мне даже интересны и где ты их откопал, где такое говорят
Ну там может не прямо дословно так, но типо всегда какая-то недосказанность присутствует. Типо тебе говорят что такое стейт и как и пользоваться, а потом это все так плавно в другую тему перетекает, и что вроде как никто не говорит "нет", но и да тоже не говорят. Но исходя из общего настроя возникает мысль "а хуле нет?".
>для этого существуют статейки на Medium и прочее
Эти статейки на медиум это отдельная тема. На 50 нахуй статей, написанных индусом, на высеров 49 написанных только для того чтобы показать десятка два новых местоимений вместо she\he, приходится только одна статья по теме, где реально все нормально показано.
> я тебе кидал даже ссылку на доку
Ты кидал ссылку на вебаркайв, что как бы говорит о том, что это все не так просто найти. В доках про это не слова, а специально это гуглить - нужно еще додуматься до того, что здесь может быть какая-то проблема.
Аноним 26/03/21 Птн 18:31:08 #119 №1978328 
Блядь какие только шизоиды не вылазят, стояли бы дальше за своим фрезерным до 5-и и дрочили бы дальше доту
Аноним 26/03/21 Птн 18:32:15 #120 №1978330 
>>1978312
>Ну там может не прямо дословно так, но типо всегда какая-то недосказанность присутствует
Да, а ты что хотел? Поэтому параллельно курсу ты гуглишь каждую тему, читаешь доку и статьи по каждой теме, и задаешь вопросы в чатиках, где тебе подскажут. Самообразование as is
>На 50 нахуй статей
Хуй знает откуда ты это придумал, всегда все нормально расписано и гуглится за 5 сек
>что это все не так просто найти
А ты думал будет легко?
Аноним 26/03/21 Птн 18:35:28 #121 №1978338 
Храню весь стейт в монго, дергаю от туда при помощи аполо, вопросы?
Аноним 26/03/21 Птн 18:37:39 #122 №1978344 
>>1978328
>Ряяяя шизойды на фрейзерном станке приехали шкварить швятой жабаскрипт ряяяяя я я себе с первого раза гугл в башку загрузил и писал идеальный код.
Аноним 26/03/21 Птн 18:50:04 #123 №1978358 
>>1978344
>с первого
Раза с 20-го, бэст практис приходит со временем
Аноним 26/03/21 Птн 19:29:44 #124 №1978392 
>>1978338
Как стать таким же крутым как ты
Аноним 26/03/21 Птн 21:25:54 #125 №1978521 
Анусы, кто в вебпаке разбирается, вот есть в нём модули, да, к ним лоудеры применяются, потом они все в код бандлятся и отправляются к юзеру исполняться в рантайме. Есть какой лоудер\плагин, чтобы модуль взять и исполнить во время билда, а в бандл, который юзеру отправиться, включить только его уже готовые экспорты?
Аноним 26/03/21 Птн 22:09:16 #126 №1978562 
>>1978521
Я почти понял что ты хотел сказать, но считай что не понял.

Один лоадер на два режима наверн сложно настроить.
Проще взять два разных лоадера и один включить в билд сборке, второй в дев режиме.

Но если ковыряться то в вебпаке вообще можно все настроить, попробуй гуглом воспользоваться.
Аноним 26/03/21 Птн 22:11:55 #127 №1978564 
>>1978562
Нет, я хочу, чтобы, допустим
import x from 'x';
import y from 'y';
export default x() + parseint(y) + 3;
Превратится в бандле в просто
export default 22;
Если x() + parseint(y) + 3 = 22.
> попробуй гуглом
Ну вот ищу execute module at build time, не находится что-то.
Аноним 26/03/21 Птн 22:23:12 #128 №1978574 
>>1978564
Prepack
Аноним 26/03/21 Птн 22:23:23 #129 №1978575 
>>1978564
> Ну вот ищу execute module at build time, не находится что-то.
Ты шо, инвалид?
Свой лоадер делай, получай от ебабеля весь АСТ с потрохами и инегрировай. Так сделано, например, в Linaria, которая в build-time евалит выражения в своих стайлд компонентах. Смотри исходники Линарии, а именно extractor пекидж, pre-eval и всякие такие.
Аноним 26/03/21 Птн 23:23:25 #130 №1978607 
image.png
>>1975601 (OP)
Бля, написал решение не Пистоне и обосрался - не уложился в лимит п овремени. Переписал на жс (иногда помогало) и тоже обосрался
втф, в чем соль?
https://leetcode.com/explore/challenge/card/march-leetcoding-challenge-2021/591/week-4-march-22nd-march-28th/3685/
Аноним 26/03/21 Птн 23:30:37 #131 №1978609 
>>1978607
Мое говнорешение. Дохера циклов for, но че-то не вижу как это можно легче оптимизировать. break есть и вроде как не выдрачиваю итерации на максимум но все равно не укладываюсь
https://pastebin.com/nxUvBtZ9
Аноним 26/03/21 Птн 23:31:41 #132 №1978610 
11943288-CAAA-4D4A-BD84-D898E65187BE.png
Посоны кто читал, тут достаточно инфы что бы джуном устроиться?
Аноним 26/03/21 Птн 23:50:18 #133 №1978618 
>>1978610
не ет параша, когда понял что книжки чиать вообще бессмысленно то все сразу стало получаться. Смотри видосы и сделай хотя бы туду лист с редакс + thunk + saga. И оп ты уже мидл
Аноним 26/03/21 Птн 23:54:41 #134 №1978620 
>>1978618
Я уже сделал пару петов на реакте, и читал доку, прошел пару курсов, щас вот на пути изучения роутера, и разных апи как встроеных так и внешних. Думал начать с этой книги углубленное изучение
Аноним 27/03/21 Суб 03:47:05 #135 №1978675 
>>1978610
Почитай документацию, нах тебе какие-то книги
Аноним 27/03/21 Суб 08:51:18 #136 №1978699 
Аноны, скачал себе вот это:

https://rutracker.org/forum/viewtopic.php?t=6027897

(Там 20 небольших проектиков на js без фреймворков, весь код в наличии.)

Сейчас открываю проекты, либо стираю scrypt.js и пишу свой код, либо разбираю как сделано автором. Проектов мало, хотелось бы побольше подобной практики. Может кто подскажет где можно побольше такого найти? Самому не получается.
Аноним 27/03/21 Суб 11:44:14 #137 №1978849 
>>1978699
На гитхабе.
Аноним 27/03/21 Суб 13:35:44 #138 №1978918 
>>1975582 →
Можно.

> a = 10, b = '+', c = 5;

const a = 10;
const c = 5;

const b = x => y => x + y;

b(a)(c);

Аноним 27/03/21 Суб 13:37:22 #139 №1978919 
>>1976488
Зато твое приложение могут делать 10 человек одновременно и через 3 года будет понятно что происходит.

Жалуются на редакс только вкатывальщики, которые не работали на больших проектах. Ну или где редакс оверкилл для простого приложения.
Аноним 27/03/21 Суб 13:40:47 #140 №1978921 
>>1978919
ридакс говно если попробовал ьюкс
Аноним 27/03/21 Суб 13:41:32 #141 №1978922 
>>1978921
Вьюкс это редакс для Вью, поехавший.
Аноним 27/03/21 Суб 13:41:58 #142 №1978923 
как минимум в нем много блоата и с какого-то хуя прикрученная иммутабельность
Аноним 27/03/21 Суб 13:43:01 #143 №1978924 
>>1978922
нет даун это не "ридакс для вью"
это более внятное и удобное воплощение флакс архитектуры для вью
Аноним 27/03/21 Суб 13:45:02 #144 №1978926 
>>1978922
Зачем ты кормишь шизика?
Аноним 27/03/21 Суб 13:47:32 #145 №1978927 
>>1978620
Книги обязательно читать после того как сделал первые шаги и написал свой туду лист. Они помогут устаканить знания и посмотреть на них с другой стороны. Хуже от книги не будет точно, на пикриле вполне ок книга (чем раньше ты освоишь основы функционального программирования, тем лучше - ты по-другому, с понимаем начнешь смотреть и на реакт, и на редакс, отпадут вопросы почему именно так, а не иначе).

А вот видосы как раз хуйня полная, они дают иллюзию что ты обучаешсья чему-то.
Аноним 27/03/21 Суб 14:22:57 #146 №1978944 
>>1978927
>А вот видосы как раз хуйня полная, они дают иллюзию что ты обучаешсья чему-то.
То же самое и книг касается.
Аноним 27/03/21 Суб 14:26:47 #147 №1978945 
dan-abramov-redux-2019.png
>>1978919
Ну, вообще-то речь про проект пятилетней выдержки на 100к строк кода.
Нет, нихуя не понятно.
Аноним 27/03/21 Суб 14:39:12 #148 №1978947 
>>1976488
Реактом пилю только дергалки апишек и всякую заведомо стейтлессную лабуду
Перекатился на ангулар и happy как elephant
Аноним 27/03/21 Суб 14:41:41 #149 №1978948 
Пацаны, я бэк, впервые буду делать фронт для своего приложения на vue, но без вебпака и нод всяких. Какие советы в путь можете дать?
Аноним 27/03/21 Суб 14:44:15 #150 №1978951 
>>1978948
>но без вебпака и нод всяких
>Какие советы в путь можете дать?
Сходить в церковь, попросить благословения.
Аноним 27/03/21 Суб 14:49:12 #151 №1978952 
>>1978944
Скажи эти десяткам поколений, которые учились по книгам.
Аноним 27/03/21 Суб 14:50:06 #152 №1978953 
>>1978945
>Ну, вообще-то речь про проект пятилетней выдержки на 100к строк кода.
Ну тогда очевидно, что каждый пук нужно корректно делать под redux way.

>Нет, нихуя не понятно.
Это ты еще не видел что такое непонятно.
Аноним 27/03/21 Суб 14:50:45 #153 №1978954 
>>1978948
>vue, но без вебпака
Шиз, ты же понимаешь что vue-loader соберет тебе твои компоненты в любом случае под капотом?
Аноним 27/03/21 Суб 15:04:44 #154 №1978960 
>>1978926
иди нахуй
фразу "вьюкс это ридакс для вью" вообще надо в рамочку заключить, как экземпляр отборной чуши от человека который не понимает ничего
Аноним 27/03/21 Суб 15:05:39 #155 №1978961 
>>1978954
вью можно подключить как внешнюю либу
Аноним 27/03/21 Суб 15:09:26 #156 №1978962 
>>1978948
>но без вебпака и нод всяких
Ммм, компиляция в рантайме, прям как в 2012
Аноним 27/03/21 Суб 16:43:31 #157 №1979003 
270321-164303.png
>>1978607
Аноним 27/03/21 Суб 16:46:43 #158 №1979004 
270321-164542.png
>>1978609
Аноним 27/03/21 Суб 17:03:39 #159 №1979014 
>>1979004
Суки! Блять, кто вас программировать учит? Хуй поймёшь, что написано, все буквы алфавита - m, c, S, b, B, c, i, b, R, a, A, x. Это какой-то быдлошифт очередной?
sageАноним 27/03/21 Суб 17:06:59 #160 №1979018 
216d6fd4c52abe35fb9a2b57c770195f.jpg
>>1979003
Идите нахуй отсюда, олимпиадники. И говнокод свой заберите, никому ваши олимпиады не всрались тут.
Аноним 27/03/21 Суб 17:15:16 #161 №1979023 
>>1979014
Там зашифровано, что ты пидор.
Аноним 27/03/21 Суб 17:22:52 #162 №1979028 
>>1978952
А тысячи поколений вообще без книг учились, что сказать-то хотел?
Аноним 27/03/21 Суб 17:50:41 #163 №1979046 
>>1978921
то, что редакс - говно, говорит даже Абрамов
Аноним 27/03/21 Суб 17:54:31 #164 №1979049 
>>1978618
>сделай хотя бы туду лист с редакс + thunk + saga. И оп ты уже мидл
совсем ёбу дал?
Аноним 27/03/21 Суб 18:09:43 #165 №1979059 
>>1979046
Альтернатив нет. Абрамов кукухой двинулся за 5 лет, теперь вместо редакса хуярит контексты и useReducer по всем компонентам, очень удобно.
Аноним 27/03/21 Суб 18:10:36 #166 №1979060 
>>1978960
Назови в чем фундаментально Вьюх отличается от Редакса.
Аноним 27/03/21 Суб 18:37:57 #167 №1979072 
А давно редукс тулкит стали использовать? В легаси его не будет, я так понимаю?
Аноним 27/03/21 Суб 18:56:08 #168 №1979079 
>>1978609
Эти петухи опубликовали решение:
https://leetcode.com/problems/word-subsets/solution/

Суть в том чтобы отдельно за-reduc-ить слова из B и не делать вложенных циклов
Аноним 27/03/21 Суб 18:59:16 #169 №1979082 
>>1979018
Тебе на собесе эти "олимпиадные" задачки задавать будут, але нахуй
Аноним 27/03/21 Суб 19:30:05 #170 №1979093 
>>1979082
На каких ещё собеседованиях? Я фрилансер. За такой стиль, с этими А Б В Г Д, вас надо было сразу расстреливать из реактивных говномётов. Ты понимаешь, что это БЫДЛО-КОД? Тем более, алгоритмов поиска подстроки МОРЕ. Вспомнить тот же Ахо-Корасик, Рабин-Карп, КМП, тысячи их...
Аноним 27/03/21 Суб 19:32:31 #171 №1979095 
MAPTrentonJessy011.jpg
>>1979093
>фрилансер
Как сосется?
Аноним 27/03/21 Суб 19:33:51 #172 №1979096 
>>1979095
Не знаю, у тебя, у офисного быдла надо спросить.
Аноним 27/03/21 Суб 19:47:47 #173 №1979104 
1) Вебпак позволяет импортить в коде любые файлы. Как донести это до vscode'а, чтобы в подсказх к импортам они были?
2) Semantic css или utility class'ы? Что на работе в реакте в ДСе чаще хотят видеть и делают?
Аноним 27/03/21 Суб 20:07:21 #174 №1979117 
изображение.png
Мне на собесе сказали "U are lacking in react". Я только потом увидел как это переводится.
Аноним 27/03/21 Суб 20:18:14 #175 №1979120 
>>1979117
У слов в английском может быть много значений, в зависимости от контекста. В данном случае тебе просто сказали, что не хватает знаний в реакте. Это не значит что ты совсем ничего не знаешь о реакте. Часто бывает, что ищут эксперта, а находят чувака со средними знаниями. Возможно там претендовало ещё 10 человек и ты просто ничем не выделился на их фоне. Либо работы слабоватые/либо мало опыта/либо мало мотивации.
Аноним 27/03/21 Суб 20:18:27 #176 №1979121 
>>1979117
А я сижу сейчас пряники кушаю.
Аноним 27/03/21 Суб 20:31:41 #177 №1979131 
Охуительно пидорастическая ассамблея придумала въебать тулкит в редукс.
Вот раньше натуралы ебаные придумали блять отдельный файл для названий акшенов, отдельный для акшен криэйторов, отдельный для редюсеров. Все красиво импортируется когда надо и куда надо и отлично работает, и главное сразу понятно что кто и откуда. Уууу сука, угнетают блять.
Теперь блять все нахуй в одном ебаном слайсе лежит. Мммм, охуенно. Я прочитал блять новую доку нахуй, эссеншиалс первую главу. Я нихуя не понял блять на что я вообще смотрю нахуй. Вот есть слайс. В слайсе reducers: {]. Но это блять акшен криейторс. А редюсер это та хуйня, которая невидимо в тайне от пользователя нахуй экспортируется в стор. Да блять вот такие порядки в анальном царстве. Охуенно. Написано, что логика в акшен креийторе плохо. Хуяк через строчку в туториале суют логику в акшен криейтор. "если чуть чуть, то можно" - пишет нам анальный клоун. Видимо сказывается старая привычка "если на пол шишечки, то не пидорас". А нет, подождите, это же редюсер, тогда можно логику. А нет, подождите, нельзя, это акшен криейтор. А нет, это снова редюсер, опять можно. А нет, подождите, вы натурал? Тогда вам нельзя пользоваться нашим охуительным тулкитом.
Аноним 27/03/21 Суб 21:00:24 #178 №1979150 
>>1979117
U are lacking in это неверная грамматика, так что работодатели твои дауны были бы все равно
Аноним 27/03/21 Суб 21:11:23 #179 №1979158 
>>1979131
Забей, тулкит это просто хуйня для вкатышей, щас модно чтобы было "легко", это главный критерий выбора инструмента.

Тулкит руинит всю суть, которая заложеная в редаксе, а именно разделение экшнов и редьюсеров. Кроме того, внутри используется иммер для обновлений, что позволяет писать мутабельным синтаксисом, только это нахуй не всралось, потому что редакс это фп, к нему как минимум рамда приглается обычно.
Аноним 27/03/21 Суб 21:19:54 #180 №1979160 
1616872704036.jpg
Ребята, подскажите пожалуйста как быть. Прочитал я значит про питон, видео посмотрел, задачи для имбецилов порешал. Затем взялся за Джанго, там тоже по верхам прошелся. Само собой с таким набором везде пролетел в плане работы за еду, поэтому решил читать про джаваскрипт. Как думаете, теперь стоит забыть питон с джанго, чтобы не тратить время и заняться только дс? Просто пока я одно пытаюсь запомнить, без практики другое забываю, а тут ещё и хтмл нужно в голове постоянно держать.
Аноним 27/03/21 Суб 21:26:37 #181 №1979162 
>>1979160
>забыть
как он забудется, лол
Аноним 27/03/21 Суб 21:26:53 #182 №1979164 
А ТЕПЕРЬ ГЛАВНЫЙ ВОПРОС
РЕДАКС ИЛИ МОБИКС?
Аноним 27/03/21 Суб 21:44:26 #183 №1979170 
>>1979162
Легко, я спустя пол года только отдаленно синтаксис помню.
Аноним 27/03/21 Суб 22:06:00 #184 №1979182 
>>1979160
Питон притянул к себе всех возможных макак со всех возможных сфер включая сис админов и тестеров, как никак не оринтирующаяся макака будешь сегодня смотреться неинтересным даже на подработках за еду
Лучший вариант будет навалить черпаками тайпскрипта, ТС - волшебная палочка сегодня покрывающая 90%+ веб задач. С ТСа даже грейдиться некуда, только расширяться в ci\cd / системы / бд или пробовать такие же яйца в профиль по типу голанжека
Как альтернатива - проперженные стандарты яв с сисярпами. Там у тебя хотя бы будет ориентир
Аноним 27/03/21 Суб 22:09:30 #185 №1979184 
>>1979170
Тебе бы версталой идти
Как раз подл стать твоему интеллектуальному уровню
Аноним 27/03/21 Суб 22:12:12 #186 №1979188 
image
>ты реакт джун
>на собесе просят написать императивную сортировку пузырьком
Аноним 27/03/21 Суб 22:57:51 #187 №1979218 
>>1979184
А мне больше конструировать системы нравится и работать с TS, нежели возиться в скучных гридах, которые я забываю как используются уже через неделю и ничего не могу даже элементарного написать.
мимо
Аноним 27/03/21 Суб 23:09:52 #188 №1979234 
>>1979188
sort_anus_buble(arrr[])
чо такой функции нету, ну тогда не судьба
Аноним 28/03/21 Вск 01:17:06 #189 №1979284 
>>1979188
> пишу декларативно класс .buble_sorted {} в ксс
Аноним 28/03/21 Вск 01:21:46 #190 №1979287 
>>1979284
это приколл такой? как ты в ксс собрался это делать
Аноним 28/03/21 Вск 01:26:30 #191 №1979291 
>>1979287
А мне нихуя не надо делать, ксс же декларативный, пусть браузер делает.
Аноним 28/03/21 Вск 01:27:31 #192 №1979292 
>>1979291
вы какой-то странный, мы вам перезвоним
Аноним 28/03/21 Вск 02:12:15 #193 №1979308 
>>1979060
тем что это совсем другая система?
там нет иммутабельности, наоборот там есть мутации
там асинхронные экшны и не нужны никакие санки и саги
Аноним 28/03/21 Вск 10:44:51 #194 №1979368 
Если редух стор хранится простым объектом, а изменяет состояние чистыми функциями, значит ли это что его полностью можно запихнуть в воркера?
Аноним 28/03/21 Вск 11:46:54 #195 №1979379 
Почему в vue не работает clean-webpack-plugin? Добавляю как в мануале vue-cli в конфиг, но дев сервер не удаляет старые чанки. Че делать а?
Аноним 28/03/21 Вск 12:04:04 #196 №1979384 
>>1979379
Дев сервер в памяти всё делает, он ничего никуда не пишет. Ты это дело с билдом протестируй.
Аноним 28/03/21 Вск 12:21:09 #197 №1979395 
Заметили как в треде тихо и адекватно стало, когда моча всех токсиков перебанила? Кекус
Аноним 28/03/21 Вск 12:25:25 #198 №1979398 
>>1979395
Ебало завали, щегол ебаный. Мертвый тред мертвого языка.
Только ты один долбоеб тут и сидишь. Хуесосов ты отпрыск.
Ссу тебе в ротеш.
Аноним 28/03/21 Вск 12:40:59 #199 №1979405 
>>1979368
Можно, но зачем?
Аноним 28/03/21 Вск 13:37:33 #200 №1979440 
>>1979405
А вот затем.
Аноним 28/03/21 Вск 14:07:16 #201 №1979458 
Где можно заказы простенькие взять? У меня мотивации не хватает свои проекты за просто так делать. Я до этого на мотивации работал дохрена на другом языке, меня уже ничего не мотивирует, только бабки, это с учетом того, что я максимум что могу сделать, это скопировать с ютуба, получить опыт и денюжку. Но где мне заказы брать, или как это монитизировать я хз.
Аноним 28/03/21 Вск 14:17:17 #202 №1979467 
>>1979458
>Я до этого на мотивации работал дохрена на другом языке
Чего перескочил на яваскрипт тогда?
Аноним 28/03/21 Вск 14:19:07 #203 №1979470 
>>1979467
1) Ниже порог вхождения в мидлы/сениоры
2) Меньше мозгового штурма
3) Больше вакансий
4) Больше зарплаты
Аноним 28/03/21 Вск 14:19:26 #204 №1979471 
>>1979467
На PowerShell вакансия нет
Аноним 28/03/21 Вск 14:22:51 #205 №1979480 
>>1979471
Ваще жара, огонь!! Продолжай
Аноним 28/03/21 Вск 15:13:57 #206 №1979517 
Есть шахматное поле, по которому ходит ладья. Надо случайным образом проделать в нём X дыр (т.е. убрать X клеток) так, чтобы поле не потеряло связность, т.е. чтобы ладья в принципе могла добраться из любой оставшейся клетки в любую.
Есть идеи, каким более-менее эффективным алгоритмом можно этого добиться? Не делать же X раз поиск пути из каждой клетки в каждую.
Аноним 28/03/21 Вск 15:15:08 #207 №1979519 
>>1979517
В jQuery что-то такое было
Аноним 28/03/21 Вск 15:21:50 #208 №1979523 
>>1979471
Админил что ли? Что мешало в своей конторке брать проекты с жабаскриптом?
Аноним 28/03/21 Вск 15:21:54 #209 №1979524 
>>1979517
декларотивную сортировку пузырьком сделай
Аноним 28/03/21 Вск 15:24:40 #210 №1979527 
>>1979517
Ладьи не нужны.
Аноним 28/03/21 Вск 15:26:02 #211 №1979529 
>>1979523
Это какой-то дегрод ответил, а не я
Аноним 28/03/21 Вск 15:31:15 #212 №1979535 
>>1979517
ты наркоман чтоле

>Надо случайным образом проделать в нём X дыр
>каким более-менее эффективным алгоритмом можно этого добиться
случайным епта

а вообще надо проверять не отгородит ли потенциальная дырка кусок поля, я думаю критерии отгораживания более-менее очевидны
дырки не должны быть в ряд или касаться углами без промежутков
Аноним 28/03/21 Вск 15:37:02 #213 №1979540 
>>1979517
Если поле изначально не задано, то я бы просто строил его до нужного кол-ва клеток, придерживаясь правила связности.
Аноним 28/03/21 Вск 15:41:56 #214 №1979544 
>>1979529
а ты не дегрод?
Аноним 28/03/21 Вск 15:44:40 #215 №1979549 
>>1979544
не знаю, а ты?
Аноним 28/03/21 Вск 16:57:07 #216 №1979649 
image.png
Всем привет. Пробую сделать сайт вопросник, типо аск.фм и подобных. Подскажите, нормально ли составил структуру базы данных? Просто вообще не шарю в базах данных, и не могу адекватно оценить норм или хуйня.
Аноним 28/03/21 Вск 17:23:57 #217 №1979667 
>>1979649
>Pending Questions
>Answered Questions
Question Text дублируется, таблицы имею похожий набор полей. Имеет смысл свести в одну таблицу
Аноним 28/03/21 Вск 17:26:29 #218 №1979674 
>>1979649
а че такое базы данных? это на бекенде какая-то хранящаяся информация?
Аноним 28/03/21 Вск 17:39:00 #219 №1979694 
>>1979674
Это как IndexedDB только на бэке
Аноним 28/03/21 Вск 18:01:05 #220 №1979718 
>>1979667
Спасибо.
А если например при ответе на вопрос, создавать новую запись в answered questions и удалять аналогичную из pending questions.

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

Скорее всего оно будет работать и так и так просто вопрос в оптимизации
Аноним 28/03/21 Вск 18:44:37 #221 №1979782 
carbon.png
Error: Objects are not valid as a React child (found: object with keys {CounterReducer}). If you meant to render a collection of children, use an array instead.

И указывает на ReactDOM.render в index.ts. Так стор и должен быть объектом??? ЧЯДНТ, уже вторые сутки сижу не могу понять
Аноним 28/03/21 Вск 19:16:08 #222 №1979823 
123.png
Сап двощь, как сделать женерик имплементацию женерик интерфейса? Мне высирает Cannot find name 'T', то есть если вписать какой-то конкретный тип то всё ок. Я понимаю что мне вообще проще от интерфейса тут отказаться и всю сигнаруту интерфейса прямо в функции определить, просто стало интерсно как это сделать, а в гугле нихуя не гуглится, или я пока не понял как это гуглить
Аноним 28/03/21 Вск 19:29:55 #223 №1979834 
>>1979782
А я даун, забейте
Аноним 28/03/21 Вск 19:49:25 #224 №1979858 
>>1979718
>создавать новую запись в answered questions и удалять аналогичную из pending questions
Слишком много логики на пустом месте.
А если ты потом захочешь лойсы добавить к неотвеченым вопросам, то после ответа придется все эти лойсы обновить, не говоря о том что у лойса будет два поля - pendingQuestionId и answeredQuestionId
Аноним 28/03/21 Вск 19:51:37 #225 №1979859 
>>1979834
Хорошо, даун.
Аноним 28/03/21 Вск 19:53:29 #226 №1979861 
>>1979718
Я бы объеденил pending questions и answered questions в одну таблицу, сделал answer_date и answer_text как NULLABLE, это был бы неявный флаг статуса ответа, и селектил бы по answer_date IS NULL/IS NOT NULL
Аноним 28/03/21 Вск 19:54:32 #227 №1979863 
>>1979718
Не будет в твоем варианте никакой оптимизации
Аноним 28/03/21 Вск 19:55:04 #228 №1979864 
>>1979834
Ты даун.
Аноним 28/03/21 Вск 20:01:48 #229 №1979869 
>>1979823
niqaque

Аноним 28/03/21 Вск 20:58:07 #230 №1979914 
Начал тыкать TS и ахуеваю насколько это дрочево
Аноним 28/03/21 Вск 21:03:24 #231 №1979921 
>>1979914
Тесты ещё попиши
Аноним 28/03/21 Вск 23:51:33 #232 №1980136 
>>1979649
Чем плохо создать таблицу ответов, а таблицы вопросов объединить в одну?
Аноним 29/03/21 Пнд 00:09:57 #233 №1980157 
test
Аноним 29/03/21 Пнд 00:11:47 #234 №1980160 
>>1980157
разбанили тебя, разбанили, не ссы
Аноним 29/03/21 Пнд 00:13:35 #235 №1980164 
>>1980160
Я постинг с дашчана проверяю.
Аноним 29/03/21 Пнд 00:18:01 #236 №1980173 
>>1979308
Мутации не иммутабельны во Вьюксе.
Аноним 29/03/21 Пнд 00:19:26 #237 №1980174 
>>1980173
*иммутабельны
Фикс

https://vuex.vuejs.org/guide/mutations.html#mutations-follow-vue-s-reactivity-rules
Аноним 29/03/21 Пнд 00:28:59 #238 №1980184 
>>1979914
После 3х лет работы с TS не представляю как можно писать без него что-то кроме туду листа.
Аноним 29/03/21 Пнд 03:10:27 #239 №1980229 
>>1980174
>we mutate the state
а ридакс создаёт новый
Аноним 29/03/21 Пнд 08:07:38 #240 №1980259 
>>1978947
Но ведь проблема стейта никуда не девалась, теперь у тебя ngrx который тоже мягко не очень.
Аноним 29/03/21 Пнд 11:45:59 #241 №1980333 
12334.png
>>1980229
А в чем разница собственно?
Аноним 29/03/21 Пнд 12:29:43 #242 №1980351 
В identity.
Аноним 29/03/21 Пнд 14:52:19 #243 №1980483 
>>1980351
И? Можешь объяснить как это помогает?
Аноним 29/03/21 Пнд 15:03:51 #244 №1980495 
В связи с политикой Twitter в отношении навязывания JavaScript энтузиасты разработали Nitter - свободный фронтенд для Twitter, работающий без навязывания JavaScript, аналитики, трекеров и ресурсов на стороне Google, CloudFlare и прочих сторонних сервисов. Код проекта написан на языке Nim и распространяется под лицензией AGPLv3.

Ура!
Аноним 29/03/21 Пнд 15:33:23 #245 №1980520 
image.png
Подскажи анон, на скирне 2 варианта происходящего. Во время инициализцации импорт отрабатывает и подтягивается строка. Однако при написании как в варианте 1, при запуске функции template уже undefined. При этом вариант номер 2 работает. Разве не должен отработавший импорт в области видимости оставаться
Аноним 29/03/21 Пнд 15:47:54 #246 №1980544 
>>1980520
необходимо дополнить, что проблема в присвоении. В первом варианте если я присвою template=888 будет ошибка
Аноним 29/03/21 Пнд 16:03:16 #247 №1980560 
>>1980520
Смоотри во что твой код скомпилировался твоим загрузчиком.
На скрине у тебя не ванильный жс.
Аноним 29/03/21 Пнд 16:24:44 #248 №1980572 
>>1980520
Возможно, вебпак оптимизирует неиспользуемые импорты и в первом случае считает что использований нет, в во втором есть.
Аноним 29/03/21 Пнд 17:37:29 #249 №1980627 
Хочу попробовать писать в test driven development стиле. Чем лучше тестировать реакт+редукс приложуху? Jest? Что сейчас самое актуальное? Тайпскрипт, если что.
Аноним 29/03/21 Пнд 18:21:24 #250 №1980668 
Анончики поясните за вью аполо граф, дергаю квери получаю стейт дальше где его хранить? Во вьекс? Или есть варианты лучше?
Аноним 29/03/21 Пнд 19:12:24 #251 №1980698 
Не понимаю, чем вы тут занимаетесь? Смотрю вакансии, а там везде фронтенд. Вы чего там сайты делаете что-ли? В какой сфере ещё этот ебаный язык программирования можно использовать?
Аноним 29/03/21 Пнд 19:31:46 #252 №1980709 
wtf.PNG
Объясните пожалуйста, что тут происходит? Это функция-декоратор. Применяется вот так например:

class SomeClass {
@NormalizeNumberZero
public integerValue: number = 0;
}

Теперь, что не присваивай в это поле (строку, булев, число, бесконечность, аллаха...), всегда при обращении к нему или число или ноль. Я не понимаю эту магию.
Аноним 29/03/21 Пнд 19:31:49 #253 №1980710 
>>1980698
Да, сайты
Можешь откатиться на 20 лет назад, там нет джаваскрипта, познаешь жизнь
Аноним 29/03/21 Пнд 19:33:38 #254 №1980711 
>>1980698
Где есть браузер и нода, почти везде.
Аноним 29/03/21 Пнд 19:50:04 #255 №1980722 
image.png
>>1980709
Что именно непонятно? Я в декораторах особо не шарю, но конструкция 1 развернется +- в конструкцию 2, что эквивалентно конструкции 3. Ты просто определил кастомные геттеры и сеттеры для поля класса, в них и спрятана логика по преобразованию значений.
Аноним 29/03/21 Пнд 19:54:54 #256 №1980725 
>>1980722
Так. А зачем тут используется Symbol()?
Аноним 29/03/21 Пнд 20:05:47 #257 №1980732 
>>1980725
Предполагаю, чтобы "скрытно" (ключи-Symbol'ы по умолчанию non-enumerable) хранить значение в объекте. Зачем это нужно, правда, не до конца понимаю. Еще смущает необходимость нормализовать значение 2 раза - при чтении и при записи. По идее куда проще было бы хранить значение в замыкании и нормализовать его только при записи.
Аноним 29/03/21 Пнд 20:18:32 #258 №1980743 
>>1980732
Как думаешь, если у меня натыкано подобных декораторов, может это влиять на производительность при большом количестве инстансов (50к+) объекта?

>смущает необходимость нормализовать значение 2 раза - при чтении и при записи
С бека после десериализации пришло поле не 21 а "21", а в коде есть манипуляция SomeObject.value = value + 1, получится 211. Эти декораторы - лишь попытка нормализовать данные, похоже неудачная.
Аноним 29/03/21 Пнд 20:20:17 #259 №1980746 
>>1980229
>When adding new properties to an Object, you should either: Use Vue.set(obj, 'newProp', 123), or Replace that Object with a fresh one. For example, using the object spread syntax
Аноним 29/03/21 Пнд 20:24:53 #260 №1980749 
test
Аноним 29/03/21 Пнд 21:31:59 #261 №1980832 
>>1980743
Если ты постоянно читаешь/пишешь в эти объекты, то импакт на перфоманс будет большой (насколько - не могу судить, надо конкретно измерять).
>в коде есть манипуляция SomeObject.value = value + 1
Логичнее и быстрее было бы очистить и привести типы всех данных один раз (при получении с бэка), и затем работать с уже подготовленными данными. А в идеале вообще бы падать с ошибкой, если от API приходит говно.
Аноним 29/03/21 Пнд 21:38:28 #262 №1980844 
>>1980832
Спасибо, попробую зайти с той стороны.
Аноним 29/03/21 Пнд 21:50:38 #263 №1980864 
>>1980627
Из всех мусорных js фреймворков более-менее нормальный только jasmine. Jest даже не пытайся трогать, это полный кусок говна. Так же тебе обязательно понадобятся:
https://github.com/jsdom/jsdom
https://github.com/testing-library/react-testing-library

И опционально, но тоже легче сразу же поставить и использовать:
https://github.com/testing-library/react-hooks-testing-library
https://github.com/testing-library/user-event

Начальный гайд с настройкой jsdom'а можешь посмотреть тут(часть про enzyme игнорируй): https://jasmine.github.io/tutorials/react_with_npm

Но дальше просто открывай доку testing library и начинай писать тесты, культуры тестирования в жопоскрипте отродясь не было, гайдов приличных нет, так что будешь все открывать сам.
Аноним 29/03/21 Пнд 22:04:46 #264 №1980879 
>>1980627
С Jest ты настолько охуеешь как еще никогда не охуевал, это просто концентрированный кал десять из десяти.
Аноним 29/03/21 Пнд 22:53:04 #265 №1980931 
>>1980864
>>1980879
Поясните, чем так плох Jest? Несколько лет использую, полет, вроде, нормальный.
Аноним 29/03/21 Пнд 22:53:43 #266 №1980932 
Стикер
Роутер нужен что бы менять компоненты местами без использования стейта?
Аноним 29/03/21 Пнд 22:59:00 #267 №1980936 
>>1980932
Роутер нужен, чтобы пользователи могли ориентироваться в состоянии по ссылкам в твоём СПА-говнеце.
Аноним 29/03/21 Пнд 23:42:34 #268 №1980976 
>>1980931
Протекающие друг в друга тесты без возможности настроить глобальный beforeEach/afterEach для всех файлов, ебанутая и абсолютно ненужная система с изолированием каждого файла в отдельный псевдопроцесс по умолчанию, отвратительные репортеры. Первого уже хватило бы, чтобы это говно тестовым фреймворком называться не могло.
Аноним 29/03/21 Пнд 23:43:25 #269 №1980978 
>>1980976
Что предлагаешь в качестве замены? Jasmine?
Аноним 29/03/21 Пнд 23:54:04 #270 №1980983 
>>1980978
>>1980864
Аноним 30/03/21 Втр 10:18:34 #271 №1981115 
16127796006700.jpg
За что ненавидят styled components?
Аноним 30/03/21 Втр 10:22:01 #272 №1981118 
>>1981115
Ууу, стили в прямо в коде
Ууу, медленнее чем ксс
Аноним 30/03/21 Втр 10:24:51 #273 №1981120 
>>1981118
>Ууу, стили в прямо в коде
Так наоборот же пиздато, не надо держать открытыми 20 модулей со стилями. Зашел в какой-нибудь CustomButton.jsx, а там и стили сразу, можно на ходу что-нибудь поменять.
Аноним 30/03/21 Втр 10:37:46 #274 №1981125 
>>1980627
>>1980978
AvA
Аноним 30/03/21 Втр 10:38:04 #275 №1981126 
>>1981120
Говнокод маня, будет опыт поймешь что так только чуханы делают
Аноним 30/03/21 Втр 10:58:47 #276 №1981137 
>>1981125
Абсолютно то же самое, что и jest, со всеми теми же претензиями.
Аноним 30/03/21 Втр 11:05:15 #277 №1981140 
>>1981137
В джесте хуй нормально настроишь параллельные тесты в одном сьюите, а тут это искаропки, так что иди нахуй, чорт.
Аноним 30/03/21 Втр 12:20:28 #278 №1981208 
>>1981126
а как делать? бем что ли использовать?
не сильно разбираюсь, но в телеграмме стайледе проповедуют чуваки с очень обширным опытом работы, хорошим гитхабом

а про то что стайледы говно обычно слышал от чушек с пустым гитхабом
Аноним 30/03/21 Втр 12:46:59 #279 №1981221 
>>1981208
Scss без &
Аноним 30/03/21 Втр 12:49:03 #280 №1981224 
>>1981221
>Scss
Господи, какое же говно говна изобрели, Матерь Божья...
Аноним 30/03/21 Втр 12:54:21 #281 №1981230 
>>1981208
Даже если ты используешь css-in-js либу, то писать стили в том же файле, что и основную логику компонента - это моветон в любом случае. Но так да, лучше scss ничего не изобрели пока что.
Аноним 30/03/21 Втр 12:58:51 #282 №1981234 
>>1981140
Какие блять параллельные тесты, дурачина, ты понимаешь, что у тебя тесты друг в друга протекают нахуй и что ты это никак не решишь, потому что setup/teardown функционал работает только в пределах одного файла, а общего не завезли?
Аноним 30/03/21 Втр 13:00:29 #283 №1981236 
>scss
зачем, если есть less?
Аноним 30/03/21 Втр 13:08:03 #284 №1981244 
>>1981236
срыгни
Аноним 30/03/21 Втр 13:18:07 #285 №1981250 
>>1981234
>тесты друг в друга протекают
>setup/teardown функционал работает только в пределах одного файла, а общего

Просто хочу разобраться. Разве глобальные beforeAll/afterAll не способствуют нарушению изолированности тестов? Можно пример того, как это в джесте течет? На стак или ишью в гитхабе ссылку можно, не обязательно накидывать код самостоятельно.

И да, жест и так поверх жасмин раннера выполняется. Да и репортеры можно юзать кастомные. Казалось бы, что может пойти не так?
Аноним 30/03/21 Втр 13:18:09 #286 №1981251 
proptypes кто нить использует?

Его только для опасных ситуаций надо юзать?
Ебнешься же ведь код документировать в него, на случай ошибок
Или это бесполезная приблуда?
Аноним 30/03/21 Втр 13:20:23 #287 №1981255 
>>1981251
Если внешние данные идут через валидаторы, то проптайпсы так-то и нахуй не сдались.
Аноним 30/03/21 Втр 13:34:07 #288 №1981261 
>>1981250
>Разве глобальные beforeAll/afterAll не способствуют нарушению изолированности тестов?
Во-первых не beforeAll/afterAll, а beforeEach/afterEach, во-вторых нарушению изолированности тестов способствует как раз невозможность после каждого теста почистить то, чем он мог насрать в глобал скоуп(анмаунтнуть реакт компоненты, почистить storage и т.п). В джесте и аве ты такого сделать не можешь в принципе, их afterEach работает только на уровне отдельного файла и в глобальном конфиге его прописать нельзя, только городить в каждый файл, где он может быть нужен.
>И да, жест и так поверх жасмин раннера выполняется.
И?
>Да и репортеры можно юзать кастомные
Они все без исключения кал.
Аноним 30/03/21 Втр 13:35:56 #289 №1981263 
Как сделать так, чтобы у меня была стуктура БЭМ в проекте с помощью вебпака?
Аноним 30/03/21 Втр 13:43:13 #290 №1981267 
>>1981263
>чтобы у меня была стуктура БЭМ в проекте с помощью вебпака
Если ты себе это сам придумал, то это нахуй не нужно. Если у тебя это кто-то требует, то пусть этот умник сам и хуячит эту структуру.
Аноним 30/03/21 Втр 13:57:21 #291 №1981279 
>>1981267
требуют, только это подаётся как обычное дело, мб я что-то не понимаю... а вообще стало интересно, как бэм используют в проектах обычно?
Аноним 30/03/21 Втр 14:13:57 #292 №1981316 
>>1981279
>как бэм используют в проектах обычно?
Никак. Он устарел.
Аноним 30/03/21 Втр 14:22:36 #293 №1981325 
В чем отличие объявления и инициализации переменной?
Аноним 30/03/21 Втр 14:24:56 #294 №1981330 
>>1981325
Объявление:
let newVar
Инцелиализация:
let newVar = 'Hello world!'
Аноним 30/03/21 Втр 14:26:50 #295 №1981336 
пацаны а вы на инпуты кидаете onChange или ref?

inb4:Formik etc..
Аноним 30/03/21 Втр 14:29:43 #296 №1981344 
image.png
>>1981330
Пачиму так?
Аноним 30/03/21 Втр 14:30:39 #297 №1981348 
>>1981344
Потому что сначала браузер проходит по скрипту и генерит var, а потом начинает выполнять скрипт. А let и const генерятся только когда до них дойдет строчка.
Аноним 30/03/21 Втр 14:33:53 #298 №1981354 
>>1981348
> генерятся
> генерит
Объявляются?
Аноним 30/03/21 Втр 14:35:09 #299 №1981356 
>>1981344
>>1981354
Честно не понимаю кто задает такие вопросы.
Если ты знаешь про переменные - значит ты прочитал про них в доке, а там все понятно написано.

Или ты где-то на улице услышал про них и пришел сюда уточнить?
Или влепую копируешь чужой код и разбираешься на ходу?
И то и то Бед практикс. Читай доку.
Аноним 30/03/21 Втр 14:38:10 #300 №1981358 
>>1981354
Это не важно. Важно то, что let и const нет до тех пор пока до них не дошел скрипт, а var есть.
Аноним 30/03/21 Втр 14:39:24 #301 №1981360 
>>1981348
> сначала браузер проходит по скрипту и генерит var
> let и const нет до тех пор пока до них не дошел скрипт, а var есть
Так это уже компиляция получается?
Аноним 30/03/21 Втр 14:42:35 #302 №1981364 
поясните нахуя нужен жизненный цикл - вилл маунт, дид маунт и прочее.
Я же могу и без них писать, типо у мення сразу будет рендер всей аппы.
А эти штуки помогают типо оптимизировать рендер что бы он грузился поэтапно, это наверно нужно для больших проектов?
Аноним 30/03/21 Втр 14:57:52 #303 №1981376 
>>1981360
Интерпретация.
Аноним 30/03/21 Втр 14:59:07 #304 №1981378 
>>1981376
С Турбофаном?
Аноним 30/03/21 Втр 15:01:56 #305 №1981380 
>>1981364
есть действия, которые тебе надо делать в определенный период времени, например при каждом создании компонента надо сделать какой-то апи запрос, он будет в маунте и т.д.
в туториале должно быть
Аноним 30/03/21 Втр 15:03:07 #306 №1981381 
16817276849275.jpg
>>1981378
С проктонисом.
Аноним 30/03/21 Втр 15:03:14 #307 №1981382 
>>1981380
Да я читал доку, прост в абстракции непонятно зачем это, когда на практике не сталкивался
Аноним 30/03/21 Втр 15:07:50 #308 №1981390 
>>1981230
Моветон писать в отдельном файле
писать в том же файле что и логика - хорошая практика/

у тебя максимум 4-6 стилей будет
если у тебя 100 стилей. в 1 файле то проблема в разбивке на компоненты
Аноним 30/03/21 Втр 15:21:08 #309 №1981404 
>>1981390
>Моветон писать в отдельном файле
Спорно. Мы в отдельном .styled.ts файле делаем. Лобковые волосы отдельно, яйцы - отдельно.
Аноним 30/03/21 Втр 15:22:11 #310 №1981406 
>>1981404
1 Компонент = 1 файл? Ну и чем это лучше модулей?
Аноним 30/03/21 Втр 15:24:47 #311 №1981409 
>>1981406
>модулей
Каких, CSS? Ну как чем, ко-ко-композицией. У нас static-time CSS-in-JS, так что, да, бенефитов мало, кроме вышеобозначенной.
Аноним 30/03/21 Втр 16:00:46 #312 №1981436 
Парни, как готовите виртуализованные списки для строк разной высоты? Есть идея делать пререндер подобных строк на сервере и там же считать размеры, а на клиент отправлять готовые значения. Профит в том, что на клиенте мы к минимуму сведем перформанс-киллер вычисления. Подводные камни в том, что на клиенте в таком случае строки не будут адаптивными по ширине, иначе вся выгода сходит на нет.
Аноним 30/03/21 Втр 17:36:28 #313 №1981549 
>>1981364
чтобы, например, загрузить данные в компонтент перед рендером
Аноним 30/03/21 Втр 17:41:29 #314 №1981552 
>>1981549
Понял, Леночка, спасибо!
Аноним 30/03/21 Втр 18:08:45 #315 №1981575 
начал разбираться с вебпаком и мозг пухнет
Аноним 30/03/21 Втр 19:03:33 #316 №1981648 
Аноны подскажите плиз в чего щас лучше вкатываться, в какой язык программирования?сам в этом ноль,хотел бы найти учителя который будет вести,буду ему % от зп платить и в дальнейшим тоже
Аноним 30/03/21 Втр 19:40:41 #317 №1981753 
>>1981648
жаваскрипт очевидно же)
Аноним 30/03/21 Втр 19:59:28 #318 №1981799 
>>1981753
Это потому что я сюда отписал
Аноним 30/03/21 Втр 20:01:09 #319 №1981802 
Ебать анонсы сегодня первый раз позвонила hr, спрашивала про всякую хуету, про друзей круг общения чем занимаюсь как пришел к вэбу, пыталась спросить за бэм, сказал что читал но нахуй не нужно тк нсть сталед компонентс и бутстрап, я обсерился? Еще сказала мол покажет мои высеры не гитхабе тимлиду, че делать если мне повторно позвонят? Я очкую
Аноним 30/03/21 Втр 20:03:35 #320 №1981808 
>>1981802
>спрашивала про друзей круг общения
дристанул с этой хуйни, не советую такою контору где обитые хрюши сидят
Аноним 30/03/21 Втр 20:07:10 #321 №1981810 
Стикер
Посоны, туплю под вечер, с утра сижу за пекой, сложно думать. Помохите.

Задача такая.

есть textarea текст из нее мы отправлем в стейт {value: " " }

нужно поставить условие на setState если текст меньше 20 символов - отправь его в value " ", если текст больше 20 символов отправь его начала из 20 символов в value а остальную часть в bigValue: " "

Так вот как правильно строку попилить что бы она и туда и туда отправлялась? раньше был метод substr но он уже не используется вроде, то ли сплит нужен то ли че то такое, не могу сообразить и найти в гугле, кек
Аноним 30/03/21 Втр 20:12:24 #322 №1981816 
Кто-нибудь пользуется wsl? Yarn 20 пакетов уже полчаса ставит, после каждого шага выполняется linking dependencies на 20к+ хз чего (наверное тоже пакетов). Из-под git bash такой хуйни нет, все взлетает за 30 сек. Это норм блять?
Аноним 30/03/21 Втр 20:20:45 #323 №1981824 
>>1981816
У wsl io тормозное, это одна из причит почему ms запилила wsl2 Можешь еще обычной виртуалкой пользоватья как деды, оно шустрее будет, как ни странно.
Аноним 30/03/21 Втр 20:31:22 #324 №1981848 
>>1981824
У меня как раз wsl2. Дело не в том, что оно тормозное, а в том что оно делает какие-то лишние шаги, которые не делает гит баш
Аноним 30/03/21 Втр 20:41:34 #325 №1981866 
>>1981810
substr
Аноним 30/03/21 Втр 20:42:29 #326 №1981867 
>>1981866
да я через него и сделал уже, а че пишут что это старый метод на ёбаном мдн
Аноним 30/03/21 Втр 20:48:27 #327 №1981880 
300321-204737.png
>>1981867
Ты совсем тупой?
Аноним 30/03/21 Втр 20:51:01 #328 №1981885 
>>1981880
токсик спок
Аноним 30/03/21 Втр 20:53:22 #329 №1981891 
>>1981848
Короче я ебал этот кал говна. Гит баш работает и не выебывается.
Аноним 30/03/21 Втр 20:55:30 #330 №1981900 
>>1981885
Ты тупой.
Аноним 30/03/21 Втр 21:25:38 #331 №1981920 
>>1981436
Ты всерьёз там свои виртуальные списки пишешь? Бери либы и не еби мозги. Да и вообще точно тебе нужны виртуальные списки в вебе? На десктопах?
Нет, ты хорошо подумол?

Рендером в другом окружении ты нихуя не добьёшься, шрифты на каждой машине по-разному рендерятся. А если дело не в шрифтах, то размеры итак легко считаются из стилей и нечего там ебаться.
Вёрсткой можешь размеры привести к одному-двум вариантам. Дизайнерам скажи чтобы это говно перерисовали и тогда вообще динамика может уйти.
Ну в крайнем случае считай gBCRом, по одному на элемент норм, обмажься рефами и мемоизацией если у тебя реакт.

5 лет кручу виртуальные списки на 256Мб устройствах
Аноним 30/03/21 Втр 21:44:11 #332 №1981930 
Есть 2 абсолютно идентичных конфига вебпака. Они лежат в папках проектов, которые абсолютно идентичны по своей структуре (исключая, офк, компоненты). Так вот. Один файл работает нормально, а второй срет в ебало миллиардом ошибок. Ошибки типа:
Type '{ mode: "development"; output: { publicPath: string; }; entry: string; module: { rules: /etcetcetc/ is not assignable to type 'Configuration'.
Object literal may only specify known properties, and 'devServer' does not exist in type 'Configuration'.
Ну так а хуле бы нет? В этой папке хочу работать, а вот в той, сука, не хочу. Блять, еще раз: проекты создаются методом копипаста нахуй. Просто блять ни единого символа не может быть "не на месте".
Аноним 30/03/21 Втр 22:13:55 #333 №1981951 
>>1981930
Ты че дебс? Очевидно у тебя путь сбивается, делай креате эпп и правь веб пак там
Аноним 30/03/21 Втр 23:43:22 #334 №1982020 
>>1981930
Еще тс конфиг настрой одинаково и типы установи те же
Аноним 31/03/21 Срд 04:51:54 #335 №1982133 
почему тут такой трафик безумный по сравнению с другими языками? весь каталог забит JS. это один какой-то анон столько постит или действительно язык такой популярный?
Аноним 31/03/21 Срд 05:43:10 #336 №1982144 
>>1982133
Популярный, особенно среди вкатышей, и очень сраченосный. Собсно потому и постят.
Аноним 31/03/21 Срд 06:11:53 #337 №1982145 
Ребятки поясните за axios, нахуй он нужен если есть фечь? Он ведь один хуй при сборке транспилируется в фетчь?
Аноним 31/03/21 Срд 07:13:20 #338 №1982153 
14582099954480.jpg
Untit222led.png
Может тут подскажут.

Есть график apexchart с двумя сериями.

Надо обновлять одну серию, оставляя другую без изменений.

Сейчас накостылил так, что обе серии можно обновить по очереди, но если попытаться обновить одну и туже - появляется дубль и слетает соседняя серия.
Аноним 31/03/21 Срд 07:17:44 #339 №1982154 
>>1982153
Для реагирования на изменение реактивных данных используют computed метод, или можно использовать watch
Аноним 31/03/21 Срд 08:28:23 #340 №1982168 
>>1981951
> Очевидно у тебя путь сбивается
Неочевидно. Я уже даже руками все переписал. Каждый конфиг файл, та же самая хуйня. Причем по соседству лежит 1 в 1 идентичный конфиг и прекрасно работает. Я хуй знает в чем тут проблема, пиздец, вместо программирования занимаюсь какой-то хуйней. Напоминает времена, когда я год сидел на линуксе и постоянно на ровном месте что-нибудь отваливалось\не работало и т.д.
>>1982020
>Еще тс конфиг настрой одинаково и типы установи те же
Все настроено, все типы стоят. Даже ради интереса удалял node_modules и заново делал yarn install. Результат предсказуем.
Аноним 31/03/21 Срд 08:34:59 #341 №1982169 
>>1982168
Помогло в конечном итоге вот так сделать в конфиг-файле:
import { Configuration as WebpackConfiguration } from "webpack";
import { Configuration as WebpackDevServerConfiguration } from "webpack-dev-server";

interface Configuration extends WebpackConfiguration {
devServer?: WebpackDevServerConfiguration;
}

Вручную импортировать интерфейсы и собрать один из двух. Ну то есть тупо вебпак ебалом тыкнуть в свой же собственный интерфейс. Почему так? Хуй его знает. Вот серьезно блять, выглядит как колдовство. Какой-то блять рациональной причины я найти не могу. Рядом лежит конфиг который прекрасно работает без этой хуйни. Единственная разница заключается в том, что там где работает, вебпак версии 5.24, а тут новый 5.28. Может сломали что-то? Хуй его знает. Но, что характерно, я вчера пробовал поставить версию 5.24 и это не помогло. Вот и думай блять.
Хорошо что мне сейчас особо делать нехуй и я всякой хуйней страдаю. А если бы такой затык на галере случился, меня бы уволили нахуй, или долбоебом считали необучаемым, кек.
Аноним 31/03/21 Срд 08:40:32 #342 №1982171 
>>1982154
А это будет работать, если к графику отображается условно (v-if) и к нему нельзя обратиться через $refs?
Аноним 31/03/21 Срд 08:56:16 #343 №1982175 
Кто-нибудь знает как пофиксить то, что вебпак видит конфиги, когда они просто так валяются в директории проекта, но не видит их, когда они лежат в /config?
Аноним 31/03/21 Срд 09:49:01 #344 №1982203 
>>1982169
@ts-expect-error
Аноним 31/03/21 Срд 09:51:52 #345 №1982206 
>>1982175
Передаёшь аргументом твой путь к конфигу. Может вебпук должен ещё и в node_modules автоматом конфиги искать?
sageАноним 31/03/21 Срд 10:06:58 #346 №1982216 
>>1982169
чет я не вдупляю, у тебя конфиг вебпака в ts-файле? что за хуйня?
Аноним 31/03/21 Срд 10:30:58 #347 №1982223 
>>1982216
Ну да, а што? Почему нет-то, до сего дня проблем не было.
Аноним 31/03/21 Срд 10:32:46 #348 №1982224 
>>1982206
Речь не о конфиге вебпака, а о том, что он не подхватывает конфиги линтера и тайпскрипта если они не в корне проекта.
Аноним 31/03/21 Срд 10:49:36 #349 №1982236 
Сколько обычно требуется времени на изучение React, при условии что изучающий уже знает js?
Аноним 31/03/21 Срд 10:49:58 #350 №1982237 
>>1982236
Иди нахуй
Аноним 31/03/21 Срд 10:56:08 #351 №1982243 
>>1982236
Да за две недели выучишь и сразу пойдешь на 200к. Не ссы
Аноним 31/03/21 Срд 11:08:34 #352 №1982246 
16026305581600.jpg
Что примерно ожидается от фуллстека/бэкэнда за 150к в дс в наше время? Какой опыт, какие функции? Это уровень мидла или сениора?
Аноним 31/03/21 Срд 11:13:59 #353 №1982249 
>>1982246
Нынче маньки, что прочитают про анимашки на жиквери - уже фуллстеки?
Аноним 31/03/21 Срд 11:15:33 #354 №1982250 
image
>>1982236
окажется, что надо ещё расшарить нпм, препроцессоры и вебпак, разобраться со всякими плагинами к нему, а их штук 20 и у каждого есть своя документация. енжой
Аноним 31/03/21 Срд 11:18:29 #355 №1982251 
>>1982224
В опциях соответствующих лоадеров указать путь.
Аноним 31/03/21 Срд 11:19:10 #356 №1982252 
>>1982249
>>1982250
Ну давайте ограничимся бэкэндом на ноде, без реактов
Аноним 31/03/21 Срд 11:20:52 #357 №1982253 
>>1982250
>расшарить нпм
А это что значит
Аноним 31/03/21 Срд 11:23:49 #358 №1982255 
Уволили с работы за распиздяйство
Ищу новую
Чет даже как то не верится
Аноним 31/03/21 Срд 11:25:52 #359 №1982256 
>>1981920
Почти все либы говно не удовлетворяют полностью запросам.
Проблема начальная в том, чтобы корректно вычислить высоту контейнера/области прокрутки. Очевидно, что использование офскрин рендеринга с вычислением размеров через gBCR - это путь в могилу. Обычно идут на ухищрения и просят указать минимальную высоту строки, а реальную вычисляют уже по мере необходимости, заодно корректируя и высоту области прокрутки (что визуально может выглядеть очень заметно на небольших списках и элементах, чья высота разительно превосходит минимальную).
Аноним 31/03/21 Срд 11:26:06 #360 №1982257 
>>1982253
да поверхносто пройтись типа что это такое, чёза require, path, __dirname, __filename, типа нахуя мне оно нужно если я фронтендер а не бекендер
Аноним 31/03/21 Срд 11:28:45 #361 №1982259 
>>1982251
У меня всеми ts файлами занимается только babel с пресетом тайпскрипта. Без тс лоадера. Мне прямо ему пихать путь до tsconfig?
В доках eslint-webpack-plugin я вообще не нашел даже малейшего намека на то, куда ему там путь до конфига пихать.
Все выглядит так будто бы проще хуй забить, да в корень вывалить все 25 конфигов.
Аноним 31/03/21 Срд 11:31:34 #362 №1982260 
>>1982252
Тогда будет цирк заместо собесов, так как для работодателя "бэкенд на ноде" вообще ни о чём не говорит. А если говорит, то собеседовыватель будет перемалывать тебе косточки кишочками ноды и релевантного фреймворка.
Чистый бэкенд на ноде - анал-карнавал похлеще фронта. Фронт хотя бы замыкается на вебпаке и его экосистеме, даже жикверик в него можно запихнуть, если очень надо. У ноды же фреймворки, как и плагины к ним, живут отдельной, не связанной друг с другом, жизнью.
Аноним 31/03/21 Срд 11:33:53 #363 №1982262 
>>1982259
Альтернатива - пихать конфиг в пресете вебпаковского конфига.
Аноним 31/03/21 Срд 11:35:04 #364 №1982263 
>>1982262
Или пихать невебпаковские конфиги в `package.json`.
Аноним 31/03/21 Срд 11:39:38 #365 №1982267 
>>1982262
Это как? Все что в лежит там в tsconfig, в eslintrc просто запихнуть внутрь webpack.config?
>>1982263
А оно сразу разберется что там к чему? Можно просто все файлы слить в package.json?
Аноним 31/03/21 Срд 11:44:12 #366 №1982271 
>>1982267
Блять, я в первый раз слышу про то, что в package можно пихать Какие-то конфиги. Посмотрел сейчас у одного знакомого, да, точно блять, у него в package конфиги еслинта и байбеля. Пиздец, а я за каким-то хуем все раскладывал по 10ти отдельным файлам.
Аноним 31/03/21 Срд 11:48:03 #367 №1982274 
>>1982223
а как ты запускаешь вебпак? через ts-node что ли?
Аноним 31/03/21 Срд 11:49:53 #368 №1982276 
>>1982274
Он его нативно умеет потреблять.
Аноним 31/03/21 Срд 11:53:00 #369 №1982278 
>>1982276
впервые слышу. как?
Аноним 31/03/21 Срд 11:54:34 #370 №1982280 
>>1982274
webpack serve --config
Тс нода есть, но только чтобы в расширении тс писать конфиг, как я понимаю.
Аноним 31/03/21 Срд 11:54:37 #371 №1982281 
>>1982267
>Это как? Все что в лежит там в tsconfig, в eslintrc просто запихнуть внутрь webpack.config?
У каждого лоадера есть поле `options` или что-то похожее, у бабелевских пресетов к лоадеру вроде как особый путь, там нужно лоадеровские доки читать, как запихивать в них конфиг.
>А оно сразу разберется что там к чему? Можно просто все файлы слить в package.json?
Не все, но всякие бабели/линтеры/пост-цсс умеют конфиги из него читать.
Аноним 31/03/21 Срд 11:55:27 #372 №1982282 
>>1982280
Yep
>>1982278
https://webpack.js.org/configuration/configuration-languages/
Под капотом юзает ts-nodeю
Аноним 31/03/21 Срд 12:03:06 #373 №1982287 
>>1982259
@babel/preset-typescript пофиг на конфигурацию из tsconfig.json, если что, он туда не смотрит.
Аноним 31/03/21 Срд 12:06:13 #374 №1982289 
>>1982287
Может быть. Вопрос в том, что tsconfig нужен для вебпака. Чтобы указать там esModuleInterop и импортировать плагины по-человечески через import X from "...", а не import X = require("...") или как там по-другому делается.
Аноним 31/03/21 Срд 12:09:35 #375 №1982290 
>>1982289
Какой же пердолинг, чтобы собрать проект, нужно сначала собрать конфигурацию сборщика проектов, а для этого нужно сначала настроить другую конфигурацию другого сборщика других проектов
Аноним 31/03/21 Срд 12:13:45 #376 №1982291 
>>1982290
Ну а хуле сделаешь. Говорю же, мне эта хуйня линукс напоминает, где в системе каждый день какая-нибудь проблема ебанутая всплывает с которой никто нигде не знает что делать.
tsconfig в моем случае нужен для того чтобы чекать типы + нормальный импорт модулей. Собирается все через пресет для бабеля. Но проблема в том, что tsconfig вообще какое-то влияние на проект оказывает только из корневой папки. Так-то похуй, но ведь хочется чтобы все конфиги лежали в специальной папке и все было красиво. Как ебалом в него вебпак тыкнуть я хуй знает.
Аноним 31/03/21 Срд 12:26:02 #377 №1982303 
>>1982237
Сам иди нахуй
Аноним 31/03/21 Срд 12:34:20 #378 №1982306 
>>1982236
От двух дней до недели (рабочей)
Аноним 31/03/21 Срд 12:44:18 #379 №1982317 
>>1982306
>до недели (рабочей)

Я безработный
Аноним 31/03/21 Срд 12:47:35 #380 №1982320 
>>1982291
>Как ебалом в него вебпак тыкнуть я хуй знает
Тебе еще и ide нужно будет в этот показать или хоть это работает?
Аноним 31/03/21 Срд 13:11:50 #381 №1982339 
>>1982153
Бамп.
Аноним 31/03/21 Срд 14:01:50 #382 №1982375 
>>1982260
> У ноды же фреймворки, как и плагины к ним, живут отдельной, не связанной друг с другом, жизнью.
Ну разные фреймворки все равно никогда совместно не используются.
Берется один и весь проект в рамках него одного делается.
Ещё можно все разбить на микросервисы и тогда можно без проблем на каждом из них использовать свой какой хош фейерверк
Аноним 31/03/21 Срд 15:02:14 #383 №1982412 
>>1981118
>медленнее чем ксс
Это и есть основная проблема.
Аноним 31/03/21 Срд 15:03:34 #384 №1982413 
>>1981436
python + django для начала
Аноним 31/03/21 Срд 15:23:10 #385 №1982430 
>>1982291
ну так ты сам выбрал путь пердолинга. зачем тебе валидировать типы в конфиге вебпака? зачем его вообще писать на тс и пердолиться с этим потом? пиши конфиг на обычном жс, вебпак в рантайме сам все провалидирует. а код да, пиши на тс, в тс-лоадере указывай путь до того тсконфига, который нужен.
>>1982320
да, потом ему нужно будет еще попердолиться и еще и в ide указать путь. это все вместо того, чтобы ПРОСТО положить все в корень (как делают просто все).
Аноним 31/03/21 Срд 15:24:12 #386 №1982433 
>>1982291
тыкнуть вот так, если что - https://github.com/TypeStrong/ts-loader#configfile
Аноним 31/03/21 Срд 15:30:52 #387 №1982436 
>>1982430
>ПРОСТО положить все в корень (как делают просто все).
А ну ок, тогда нет смысла ебать себе мозги.
>>1982433
Эх, жаль я тс-лоадером не пользуюсь.
Аноним 31/03/21 Срд 15:39:46 #388 №1982441 
>>1982436
а, извини, я немного перепутал твои посты с постами другого чувака.

повторюсь, если ты используешь babel-loader и @babel/preset-typescript, то он чихал на настройки в tsconfig.json, т.к. единственное, что делает @babel/preset-typescript - это просто вырезает типизацию, код он не транспилит никак.

но о каком тогда влиянии на проект ты говоришь? про тайпчекинг в консоли и IDE? в консоли ты можешь задать путь до конфиг-файла через параметр "-p", например "$ yarn tsc -p config/tsconfig.json", а вот как в ide настроить путь - хз, в каждой по-разному. насчет vscode даже не уверен, что это можно сделать.

либо у тебя есть вариант сделать 2 тсконфига - 1 в папке configs (на который ты будешь ссылаться во время сборки) и один в корне (для ide). в том, что лежит в корне нужно будет написать "{ "extends": "./configs/tsconfig" }". но тут есть такой момент, что files, include и exclude надо будет прописать в обоих файлах сразу (т.к. эти параметры не наследуются).
Аноним 31/03/21 Срд 15:40:29 #389 №1982443 
>>1982441
но все равно все это выглядит как пердолинг, не еби мозги, рил.
Аноним 31/03/21 Срд 15:58:59 #390 №1982462 
>>1982441
>но о каком тогда влиянии на проект ты говоришь? про тайпчекинг в консоли и IDE?
Вебпак не работает с импортами типо import X from "..." без настроек из tsconfig. Да и похуй уже, я что-то из настроек перенес в package, что-то вынес в корень, терпимо получилось.
Аноним 31/03/21 Срд 16:38:41 #391 №1982510 
>>1982462
э, ну так-то работает спокойно.
Аноним 31/03/21 Срд 16:41:51 #392 №1982513 
>>1982510
Нет не работает. Он начинает срать, что ему надо либо поставить флаг esModuleInterop, либо импортировать через const X = require("...") - но как только ты попробуешь это сделать, тебе в ебало прилетит следующая ошибка о том, что на этот раз в модулях неправильный экспорт.
Аноним 31/03/21 Срд 17:03:28 #393 №1982537 
>>1982513
кто именно начинает срать? вебпак или иде? если ты не используешь ts-loader
>>>1982436
>Эх, жаль я тс-лоадером не пользуюсь.
то вп ну никак не может тебе срать такими ошибками. скорее всего тебе это ide срет.
Аноним 31/03/21 Срд 17:22:11 #394 №1982560 
>>1982537
>то вп ну никак не может тебе срать такими ошибками. скорее всего тебе это ide срет
Ну вебпак то он запускает не через бабельлол, а через ts-node
Аноним 31/03/21 Срд 17:23:31 #395 №1982563 
image.png
>>1982560
Кстати говоря, если еще немного попредолиться, то может что то и получится
Аноним 31/03/21 Срд 17:37:03 #396 №1982576 
14461005161550.jpg
Подскажите, как в Vue из v-text-field получить введённое значение по окнчанию ввода?

Например, занёс в v-text-field через v-model значение 100. Позже захотел поменять его на 10000.

Сейчас какждые 2 секунды чекаю не изменилось ли значение v-model и если оно не равно исходному - обрабатываю.
Может можно как-то лучше?
Аноним 31/03/21 Срд 17:50:45 #397 №1982592 
>>1982576
watch + debounce
Аноним 31/03/21 Срд 17:53:49 #398 №1982595 
DuW-Yr0XQAAiaHM.jpg
node -v
v14.15.4

Задача.
Файл(txt формат) или строку с hex цифрами преобразовать в бинарную строку или буфер и записать в файл(bin формат).

Пример строки:
759208514a19a35d454520c65751ada7e9dd2616c0ccfae77d706b6d751566e58c81b47a739f41e7
ccaa047c512fcd983a28f35f23fc379a32cdf1de40e626ede755173d884c9f04355d5032b227494d

Примерный формат ожидаемого результата:
~d S¦¬^`@)‡êƒ®ÚݾœOqDÄŽ``î́–
ŠïèÆëBªùù•0O€ç0»¦WUP°V%’Ò¨¦=’Zktšg¢Ýd÷—NP-1iÌ,­


День сидел-ковырял и в итоге не понял даже куда копать.
Было бы плюсом сделать кроссплатформенный вариант. Но мне есть хоть какой-то пример будет очень хорошо.
Заранее благодарю
Аноним 31/03/21 Срд 17:56:08 #399 №1982601 
>>1982592
Можно пример?
И в Vue вроде нет debounce.

И чем поможет watch для нескольких полей ввода?
Аноним 31/03/21 Срд 18:01:48 #400 №1982606 
>>1982601
debounce возьми где-нибудь ещё, хоть сам напиши

откуда несколько полей взялось уже?
Аноним 31/03/21 Срд 18:02:20 #401 №1982607 
image.png
>>1982595
Аноним 31/03/21 Срд 18:09:53 #402 №1982611 
236e17a73d0ae54a7fa423ee156c3dd5.png
>>1982606
Я для примера сократил до одного.

Хорошо: есть несколько полей ввода, в которые уже подсунуты значения через v-model. Хотим изменить значение, например, второго поля из трёх.
Как получить введенное значение поля по окончанию ввода?

Так лучше?
Аноним 31/03/21 Срд 18:21:38 #403 №1982625 
image.png
>>1982607
Огромное спасибо. Работает

Но забыл сказать что изначальный файл это СТРОКИ цифрами
и из-за переноса строки в буфер попадала только первая строка.

Чтоб заработало, немного переделал скрипт.
Но решение на 100% НЕ совпадает с оригиналом.
Непонятно что делать с этим.

Пример выполненого кода:

let str = fs.readFileSync(ASC_NUMBERS_PATH);

str = str.toString().split('\n').join('');

str = Buffer.from(str, 'hex');

fs.writeFileSync(BIN_NUMBERS_PATH, str)

На картинке результат и как должно быть(вроде как)

Если есть идеи почему так и как сделать более правильно, милости прошу.
Аноним 31/03/21 Срд 18:21:49 #404 №1982626 
>>1982611
Ну значит лепишь по watch на каждую model и дергаешь оттуда дебаунснутую функцию, параметром в нее передаешь что-нибудь для определения по какой model было изменение
Аноним 31/03/21 Срд 18:25:57 #405 №1982633 
>>1982626
Блядь, гон какой-то.
Аноним 31/03/21 Срд 18:27:43 #406 №1982635 
>>1982633
Каков запрос, таков и ответ
Аноним 31/03/21 Срд 18:38:12 #407 №1982648 
Sass или postcss? Уже использую Сас, решил добавить для autoprefixer и cssnano добавить в вебпак postcss, а у него оказывается есть и плагины для nested и для переменных, вообще для всего. Нужен ли тогда мне Сас?
Аноним 31/03/21 Срд 18:43:28 #408 №1982652 
>>1982625
так а с чего ты решил, что именно так должно быть? может все таки твой вариант корректный? тут особо негде ошибиться.
Аноним 31/03/21 Срд 18:45:56 #409 №1982654 
>>1982625
>>1982652
слушай, а эти hex-строки, это что вообще? дамп какой-то памяти? просто есть ощущение, что байтики перепутаны местами (в группах по 4 штуки байтики идут в обратном порядке, обрати внимание). как будто в первом случае данные были в big-endian, а во втором - в litte-endian-формате.
Аноним 31/03/21 Срд 18:46:27 #410 №1982655 
>>1982635
Ну пиздец.

Вроде нормально сформулировал. Н-да.
Аноним 31/03/21 Срд 18:47:41 #411 №1982656 
>>1982256
В последней реализации виртуального списка на текущем проекте мы высоту элементов задаём заранее. Ну прям метаинформацией хардкодом вместе с данными элемента. Это не сильно удобно в использовании, но зато компонент списка и написан просто и работает быстро (а это намного больше значит, даром что пятая уже попытка его написать), но у нас там рили специфика хардкорной производительности. Ну и элементы обычно типовые и вариаций размеров не так много.
Если не так, то gBCR, какие варианты то ещё? Либо статически заранее, либо динамически – вот два стула.
Высоту прокрутки и не считаем, просто напихиваем элементы в неё с абсолютным позиционированием.
Аноним 31/03/21 Срд 18:57:53 #412 №1982664 
>>1982654
hex-строки - просто случайно сгенерированные числа.
После генерации, файл со строками должен преобразоваться в бинарник для прохожения батарей тестов.

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

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

Вообще нужно чтоб можно было сделать преобразование с заданным кол-вом цифр в строках.




Аноним 31/03/21 Срд 19:13:56 #413 №1982676 
Mobx
Аноним 31/03/21 Срд 19:19:26 #414 №1982686 
>>1982664
Раз так, то вариант на node, очевидно, более корректный. Он 100% не учитывает никакой endianness. А экзешник, видимо, сделан криво.
Аноним 31/03/21 Срд 19:43:48 #415 №1982728 
>>1982648
Tailwind css, и выкинь это говно мамонта
Аноним 31/03/21 Срд 20:25:29 #416 №1982757 
1.png
>>1982537
>то вп ну никак не может тебе срать такими ошибками.
Ой блять, на, смотри. Стоит вернуть tsconfig в корень все заводится с полпинка. Через терминал отдельный от вс кода все то же самое.
Аноним 31/03/21 Срд 20:41:09 #417 №1982771 
>>1982728
А как же мои semantic css??? Жопавинд это же functional css, это же ересь!
Аноним 31/03/21 Срд 21:01:16 #418 №1982791 
>>1982771
>ересь
Писать 100500 вложенных стилей, а потом как ебанашка скролить в поисках нужного не ересь? Ок
Аноним 31/03/21 Срд 21:08:03 #419 №1982799 
>>1982791
Но я же приличный человек с css modules, у меня в файлике по 5-10 стилей максимум на каждый компонент
Аноним 31/03/21 Срд 21:45:46 #420 №1982822 
>>1982757
решил попердолиться с конфигом в ts - страдай.
Аноним 31/03/21 Срд 22:55:33 #421 №1982871 
Я хуевый, поясните пожалуйста.
Есть нищее апи для моего недвача
/posts даёт все треды в json
/posts/номер_треда/ даёт все посты в номер_треда треде в json

Я например загрузил все треды, высрал верстку на жсе, и хочу к ним приделать ссылки, чтобы можно было зайти внутрь треда. То есть откуда получать данные я знаю, но как мне сгенерить страничку, или хуй знает, чтобы у меня в адресной строке было примерно как на дваче, типа номер треда, чтобы можно было потом например ссылку на него дать? Алсо, делаю на ванилла JS, и хотелось бы узнать, можно ли на нем подобное высрать, или надо глубже погружаться.
Аноним 31/03/21 Срд 23:02:38 #422 №1982880 
>>1982871
react-router
Тебе надо погружаться в браузерное апи, а конкретнее history api
Аноним 01/04/21 Чтв 00:19:04 #423 №1982929 
>>1982871
<a href="/posts/1"/> епта.

Очевидно у тебя должен быть сервер, который этот запрос обработает и выдаст в ответ html страницу. А на самой странице уже можешь либо прямо на сервере пост рисовать, либо жсом дергать JSON АПИ.
Аноним 01/04/21 Чтв 02:51:24 #424 №1982962 
>>1982576
Bump.
Аноним 01/04/21 Чтв 07:50:17 #425 №1982988 
>>1982962
Используй @change
Это не совсем задержка, но аргумент для обработки можно передать в функцию как только пользователь переключится с поля ввода, кликнув на любой другой элемент \ пустое место.

Debounce в Vue нет, он реализуется сторонними плагинами и костылями, кому как нравится.

<v-text-field ... @change="funcName(...)"></v-text-field>
Аноним 01/04/21 Чтв 12:44:21 #426 №1983109 
>>1982656
Да вот жидхабовцы раззадорили своей сторей о значительных оптимизациях в этом направлении https://github.blog/2021-03-25-how-github-actions-renders-large-scale-logs/ что стало интересно прям. А так, fixed height, конечно упрощает жизнь знатно.
Аноним 01/04/21 Чтв 12:54:54 #427 №1983115 
Сколько дней нужно, чтобы разобраться с вебпаком? У меня 2 день супердизмораль, там слишком много всего
Аноним 01/04/21 Чтв 12:55:01 #428 №1983116 
https://twitter.com/shadeed9/status/1377515028467830785
Аноним 01/04/21 Чтв 12:57:09 #429 №1983118 
это блять шаблонизатор нахуй ещё сцсс а ещё там надо туда сюда нахуй получается из компонентов надо всё собирать в мейн, потом в бандл чё нахуй, ещё минифицировать и транспилировать а ещё это всё надо собрать и пердолиться в консольке
Аноним 01/04/21 Чтв 13:31:52 #430 №1983167 
>>1983115
>>1983118
сам вебпак делает (практически) только одну вещь, разобраться с ним изи. но к вебпаку в комплекте идет здоровая экосистема, там да, придется поебаться.
Аноним 01/04/21 Чтв 13:38:17 #431 №1983175 
>>1983116
Но семантический ксс...
Аноним 01/04/21 Чтв 15:38:58 #432 №1983251 
>>1983118
С пердолингом в консолечку тухло у вебпака, там всего-лишь вариации npm команд переключаешь.
Аноним 01/04/21 Чтв 15:58:14 #433 №1983260 
1.png
Короче, я решил, что я все это в рот ебал, и переписал конфиг вебпака с тс на жс. В пизду блять. Каждую 0.0.0.0.1 версию будут разваливаться типы, придумывать какие-то костыли, писать интерфесы для конфига, короче я подумал и решил, что весь этот геморрой идет нахуй. Я хочу программировать, а не пердолиться с конфигами хуй его знает ради чего.
Теперь проблема на пике. Линтер видит, что импорты в файле сделаны вот так: const X = require("...") и срет, что в ТС файле так делать нельзя. Но файл теперь не тс, а жс. Эта ошибка никак не влияет на работоспособность, она просто засирает вкладку problems и мешает отслеживать настоящие проблемы. Как можно это хуйню отключить или сделать так, чтобы эта немытая залупа свой грязный нос в мои конфиги не сувала?
Аноним 01/04/21 Чтв 16:06:52 #434 №1983265 
>>1983260
Все, разобрался, добавил эту хуйню в .eslintignore. Ух бля, напердолился.
Аноним 01/04/21 Чтв 16:32:53 #435 №1983285 
>>1983265
Окей, новая проблема. Как мне сделать так, чтобы вебпак компилировал проект в продакшен моде и раскладывал файлы по разным папкам внутри build?
То есть вместо того, чтобы все просто выкидывать в build, он например, js файлы клал в build/scripts, css в build/styles и т.д?
Аноним 01/04/21 Чтв 16:48:25 #436 №1983304 
Анонсы как сделать гитхаб закрытым для всех, но что бы хрюхи по ссылке его видели?

Какая то ебаная приватность у них на сервисе пиздец, либо открыто для всех, либо закрыто для всех
Аноним 01/04/21 Чтв 17:11:31 #437 №1983343 
>>1983285
Или может это нахуй не надо и на хостинге можно будет все руками разложить?
Аноним 01/04/21 Чтв 17:28:00 #438 №1983375 
>>1983343
Можно. А можно и сделать так, чтобы вебпак разложил. Читай дальше опции к плагинам\лоудерам и самому вебпуку
Аноним 01/04/21 Чтв 17:28:29 #439 №1983379 
>>1983167
ну спасибо, а то я немного ахуел со всего зоопарка, хотя уже картинка складываться начинает
Аноним 01/04/21 Чтв 17:37:17 #440 №1983390 
>>1983375
>Читай дальше опции к плагинам\лоудерам и самому вебпуку
Я вот в упор такого не вижу и нагуглить не могу. Может ткнешь меня носом, а дальше я сам разберусь.
Аноним 01/04/21 Чтв 17:56:03 #441 №1983407 
>>1983390
output.filename
output.assetModuleFilename
Rule.generator.filename
filename у minicssextractplugin
Аноним 01/04/21 Чтв 18:04:42 #442 №1983418 
>>1983407
>output.filename
Блять, ну так сразу и не скажешь, что поле filename отвечает за папку.
У меня сейчас, условно, все css выкидывается в папку build в виде: [name].[hash].css, если я в поле filename для MiniCssExtractPlugin пропишу css/[name].[hash].css, то у меня все начнет складываться в папку /build/css/[name].[hash].css, так что ли? Если что, то так сразу хуй догадаешься, что это так работает, об этом нигде не написано, я думал для папки специальное свойство должно быть.
Аноним 01/04/21 Чтв 18:12:25 #443 №1983431 
>>1983418
Ну да, это работает. Даже папки само создает. Но до этого просто нереально блять додуматься.
Аноним 01/04/21 Чтв 18:25:22 #444 №1983442 
>>1983431
Хз, анус, я сразу догодался об этом
Аноним 01/04/21 Чтв 18:46:50 #445 №1983460 
>>1983431
додуматься нельзя,другое дело, что у вебпака есть доки, которые так лень читать...
Аноним 01/04/21 Чтв 18:50:50 #446 №1983468 
>>1983460
Если что, то там явно написано, что так можно указать папку выхода, только в разделе про ассеты. В остальных местах свойство filename используют только чтобы генерировать уникальное имя файла при компиляции. Специально читать всю огромную доку вебпака = быть ебанутым. Это инструмент который используется в чисто утилитарных целях, это не какой-то фреймворк, чтобы сидеть и неделями его изучать. Есть вопрос - ищешь что-то конкретное в доке - читаешь.
Аноним 01/04/21 Чтв 18:52:50 #447 №1983472 
>>1983468
> чтобы сидеть и неделями его изучать
Я уже третью неделю по часу-два в день настраиваю его. Уже настроил тс, бэйбл, ксс, саас, постксс... осталось еслинт наверное ещё и всё. пизедц.
Аноним 01/04/21 Чтв 18:59:55 #448 №1983485 
>>1983472
а потом бах и 6 версия выходит, всё заново настраивать )))
>>1983468
Я сам почитал чутка и приуныл, решил видосов глянуть. Самое прикольное, что годной информации не так уж много, особенно по 5 вебпаку. Нет именно тут по некоторым вопросам ну типа pug + 5 webpack я ничего не нашёл
Аноним 01/04/21 Чтв 19:02:27 #449 №1983490 
image.png
У нас тут в одном соседнем треде возник вопрос.
Сколько джаваскриптеров нужно, чтобы развернуть эту строку?
Аноним 01/04/21 Чтв 19:04:06 #450 №1983493 
>>1983472
>осталось еслинт наверное ещё и всё. пизедц.
Ты забыл минимизацию в продакшн моде. А еще вебпак у тебя не будет принимать картинки по-дефолту. А даже если ты настроишь его так, чтобы он их принимал, то все равно не примет, потому что картинки не ТИПИЗИРОВАНЫ. Чтобы типизировать картинки надо создавать отдельный файл с типами картинок (слава богу там 5 строчек), в котором они типизируются как модули. И куча подобного мелкого говна.
Бтв, не повторяй моих ошибок, не пиши конфиг вебпака на тайпскрипте, каждый новый микроапдейт вебпака руинит твой конфиг просто нахуй и приносит увлекательную еблю с отваливающимися типами. Чтобы писать на препроцессоре\ксс с тайпскриптом (а еще лучше на препроцессоре с модульным ксс) тебе придется создавать файлы типов для сасс файлов. Делается это либо руками (заебно), либо модулем typed-scss-module. Ну и чтобы хорошо разбираться во всех этих use: /\.(ts|js)x?$/i советую сразу подучить регулярочки, не откладывать все это надолго. Ах да, простые картинки грузятся так:
{
test: /\.(jpg|png)$/,
type: "asset"
}
А для svgшек нужен svgo-loader. Ну вроде все, с остальным сам ебись.
Аноним 01/04/21 Чтв 19:04:08 #451 №1983494 
>>1983490
Надо как минимум четыре ноды и один вебпак
Аноним 01/04/21 Чтв 19:18:36 #452 №1983511 
>>1983493
>Ты забыл минимизацию в продакшн моде
Не знабыл, где надо уже стоит IN_DEV ? лоудер-для-дева : лоудер-для-прода
>не будет принимать картинки по-дефолту
Я уже поставил type asset'ы
>потому что картинки не ТИПИЗИРОВАНЫ
Уже создал types.ts с ambient module'ями вроде module '*.sccs' и остальных
>не пиши конфиг вебпака на тайпскрипте
Я уже
>typed-scss-module
В пизду, я просто прописал один ambient module и хуй с ними.
>А для svgшек нужен svgo-loader
Надо ещё вроде react-svg-loader, чтобы превращал svg'шки в компоненты, которые можно использовать как обычные.
Аноним 01/04/21 Чтв 19:21:18 #453 №1983514 
Есть минификатор который минифицирует множество this в переменную?
Аноним 01/04/21 Чтв 19:26:26 #454 №1983525 
>>1983514
что такое множество this?
Аноним 01/04/21 Чтв 19:28:04 #455 №1983526 
>>1983525
Если в методе множество обращений через this., чтобы оно создало локальную переменную с одной буквой и заменило this. на a.
Аноним 01/04/21 Чтв 19:28:29 #456 №1983527 
>>1983525
[this, this, this, this, this, this, this]
Аноним 01/04/21 Чтв 19:38:16 #457 №1983538 
>>1983526
gzip, в котором твой сервер должен отправлять все ответы вообще, и так заменит повторяющиеся слова во всём тексте вообще
Аноним 01/04/21 Чтв 19:41:08 #458 №1983544 
image.png
>>1983490
Три: https://github.com/mathiasbynens/esrever
Аноним 01/04/21 Чтв 19:52:24 #459 №1983551 
>>1983511
>один ambient module
НО... НО... Типизация...
>react-svg-loader
Бля, а вот этого я не знал, хотя все вроде и так заебись работает.
Аноним 01/04/21 Чтв 20:07:26 #460 №1983564 
image
>>1983544
>nigglers
Аноним 01/04/21 Чтв 20:11:53 #461 №1983568 
image.png
>>1983564
Да, тоже проиграл.
Кстати, нихуя оно не может перевернуть флаг (не нашёл Уэльса на клавиаутре, такшо las Whales son Brtainos).
Ноду вообще пидорасит от флагов, я там нормальную строчку ввёл а отображается она как синтаксически не валидная.
Аноним 01/04/21 Чтв 21:08:45 #462 №1983616 
>>1983564
> Niggler
> NYC
> 1 commit 2 ++ 2 --
> https://github.com/mathiasbynens/esrever/commit/4386797883fd04b42f693e43bd1c69b9dc841a27
Настоящий нигга, и в Arctic Code Vault попал.
Аноним 01/04/21 Чтв 21:17:16 #463 №1983626 
>>1983568
>не нашёл Уэльса на клавиаутре
Зря, с Уэльсом всё гораздо интереснее. Скопируй из какой-нибудь эмодзипедии.
Аноним 01/04/21 Чтв 22:27:58 #464 №1983692 
>>1983626
Великобритания наоборот – Болгария. Куда тут интереснее.
Аноним 02/04/21 Птн 04:42:09 #465 №1983814 
>>1982988
Спасибо, помогло.
Аноним 02/04/21 Птн 09:34:25 #466 №1983855 
Аноны, паршу с помощью JS адресс, например https://site.ru/order?cat=1&filter=2&page3, как получить цифру из параметра page? Она может быть любой длины, так что .slice("-1") не поможет
Аноним 02/04/21 Птн 09:55:16 #467 №1983864 
>>1983855
Погугли методы URL.
Аноним 02/04/21 Птн 10:00:53 #468 №1983866 
>>1983864
Тут как ты мог заметить страница идёт слитно, page3, мне нужно это 3 выдернуть, а может быть и не 3, а 100, и по сути тут получается строка, выдернуть нужно из строки, так что методы URL тоже бесполезны
Аноним 02/04/21 Птн 10:03:34 #469 №1983868 
>>1983866
page3.replace(page, emptyString)
Аноним 02/04/21 Птн 10:14:55 #470 №1983875 
>>1983866
Какая слитно, наркоман? `page` - поисковой параметр и если ты погуглишь методы URL, то узнаешь, как работать с поисковыми параметрами ссылок, а заодно как сконвертировать ссылку в этот объект.
Ну или парси регулярками/методами строк, если любишь пердолиться.
Аноним 02/04/21 Птн 11:01:52 #471 №1983906 
>>1983855
str.replace(/.page(\d+)./, "$1");
Аноним 02/04/21 Птн 11:20:50 #472 №1983927 
>>1983875
page3 - слитно
page=3 - не слитно
шах и мат
Аноним 02/04/21 Птн 13:39:16 #473 №1983982 
>>1982656
Вспомнилось как впервые столкнулся с необходимостью в виртуальном списке. Выводил список 10000 и он мягко говоря не мог пробздеться, а у друга на маке вообще страница висла при попытке прокрутить. От результата виртуализации я просто охуел. Повезло, что все элементы фиксированной высоты и не пришлось ебаца. В тот день я излечился от преждевременной оптимизации жса.
Аноним 02/04/21 Птн 14:08:00 #474 №1984001 
>>1983982
>а у друга на маке
трахаешь его?
Аноним 02/04/21 Птн 15:06:29 #475 №1984035 
>>1984001
регулярно
Аноним 02/04/21 Птн 16:12:02 #476 №1984060 
Подскажите по гитфлоу.
Вот я проект с нуля пилить начал, зделол инишиал коммит в мастер, запилил бранч "девелопмент". Проект с нуля, повторяю. Что мне дальше делать, для каждоый микрореализованной фичи пилить бранч "фичаХ", а потом мерджить ее с девелопментом, и когда наберется базовый функционал мерджить все в мастер и пушить? А все мои коммиты тоже запушатся?
Аноним 02/04/21 Птн 16:34:10 #477 №1984075 
>>1984060
Мелкие фичи можешь сразу в develop коммитить. Суть гитфлоу в релизных ветках: когда надо сделать релиз, форкаешь актуальный develop во временную релизную ветку, стабилизируешь её (фиксишь
в ней все баги), потом мержишь одновременно в master и в develop, после чего удаляешь
Аноним 02/04/21 Птн 17:44:54 #478 №1984123 
>>1984075
>потом мержишь одновременно в master и в develop
Всегда казалось это хуитой в гитфлоу, потому что мерж в мастер обычно делается кнопкой на гитхабе/лабе по аппруву пулл/мердж-реквеста, а прямые пуши в протектед бранчи запрещены.
Аноним 02/04/21 Птн 18:35:16 #479 №1984153 
maxresdefault.jpg
Всем привет!
Я вот хочу сделать типа такой интерфейс. Я учу бекэнд, но тут как я понимаю всё на фронтенде, а из бэка только данные загружаются. Не очень понимаю, с помощью чего такое делается вообще. Ну вот типа надо сделать таблицу, но вот эти полоски сами поверх таблицы как создавать? Просто как-то объединять ячейки в зависимости от полученных данных? Или есть какой-то способ создать какие-то отдельные элементы поверх таблицы, которые будут типа привязаны к ней? Или вообще это не таблица? Есть какие-нибудь идеи, что почитать?
Аноним 02/04/21 Птн 18:47:41 #480 №1984166 
>>1984153
<div style="position: relative; left: 100px; top: 500px">полосочка</div>
Аноним 02/04/21 Птн 18:57:42 #481 №1984171 
>>1984166
Ну так это же должно типа двигаться вместе с таблицей. И плюс, если так размер указывать, то оно на разных размерах окна будет по-разному стоять, да?
Аноним 02/04/21 Птн 19:00:08 #482 №1984173 
>>1984171
Берется фреймворк для фронта, реакт например. Там уже прописывается логика рендера (как расставить полоски), исходя из данных полученный с сервера.
Аноним 02/04/21 Птн 19:04:02 #483 №1984176 
>>1984171
Ну значит абсолютно относительно таблицы ставь.
Аноним 02/04/21 Птн 19:08:21 #484 №1984178 
>>1984173
Ну я читал немного как фреймворки устроены, но они же энивей не создают никаких новых технологий как бы. В смысле, что энивей это как-то на html надо высрать.
>>1984176
Да, посмотрел сейчас, типа можно сделать элемент относительно другого элемента. То есть какой-то ячейки например и он будет всегда к ней привязан. Почитаю, спс.
Аноним 02/04/21 Птн 19:31:04 #485 №1984192 
>>1984178
> как-то
На фреймворке
>на html
На JSX.
Аноним 02/04/21 Птн 19:42:07 #486 №1984203 
>>1984192
Ну так JSX - это разве не типа шаблонизатор такой? Ну то есть энивей же все это верстка на хтмл и цсс.
Аноним 02/04/21 Птн 19:47:51 #487 №1984207 
>>1984178
да, фреймворки это обычный html5
там просто удобно организована компонентность и реактивность, ты ровным счётом тоже самое можешь писать на чистом джаваскипте, но при сложном проекте тебе чтобы не запутаться придется сделать свой минифреймворк скорее всего - функции для генерации компонентов и что-нибудь такое
Аноним 02/04/21 Птн 19:58:57 #488 №1984215 
>>1984153
это довольно сложный интерфейс, сделай что-нибудь проще, например одну таблицу
таблицу надо кстати делать дивами, советую использовать гриды

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

тебе может быть проще просто залить цветом нужные клетки

для фронта vue наверное будет проще реакта, да и чистого джс тоже
создашь компонент клетка таблицы и будешь в него передавать пропами дату и бронировано или нет, в зависимости от чего меняется содержание и цвет, а сами эти компоненты гридами в таблицу выстроишь
Аноним 02/04/21 Птн 20:27:25 #489 №1984244 
>>1984215
Спасибо.
Ну я думал делать сначала таблицу на каждый месяц, без скролла вбок, да.

>тебе может быть проще просто залить цветом нужные клетки
Ну я тоже так думал, но что делать если в один день заезд и выезд? Надо типа разделить клетку на две клетки как-то и чтоб это всё не распидорасилось. Ну и эти полоски должны быть кликабельны. Ну и в перспективе, чтоб их можно было перетаскивать из одного номера в другой и растягивать в ширину.
Аноним 02/04/21 Птн 20:39:46 #490 №1984256 
>>1984244
с такими целями тебе придется фронт неплохо так подучить лол

алсо по минимуму кликабельность и залив части клетки сделать просто, а вот с полосками, их перетаскиванием, закреплением и т.п. придется помучиться, может либа есть такая впрочем
Аноним 02/04/21 Птн 20:49:36 #491 №1984267 
>>1984256
Ну это так, на будущее конечно. Я к тому просто, что если это делать объединением клеток, то уж наверняка не получится перетаскивание и растягивание потом.

>может либа есть такая впрочем
Видел в жквери юай есть какая-то штука Draggable. Похоже, но я не особо изучал ещё.
Аноним 02/04/21 Птн 21:27:55 #492 №1984306 
>>1984267
там одного дрэга мало, надо ещё чтобы полосочка умела определять куда ее перенесли и насколько растянули
короче может сразу либу для таких таблиц искать лол
Аноним 02/04/21 Птн 21:38:20 #493 №1984315 
>>1984153
Ты пытаешься собирать ядерный реактор, не умея в ардуино. Ничего хорошего из этого не выйдет. Бери проекты по силам и постепенно научишься.
Аноним 02/04/21 Птн 21:49:34 #494 №1984325 
>>1984315
Ну я же не какие-то дохуя элементов и эффектов хочу. Я понимаю, что то, что на картинке - это сложно со всеми функциями. Но я хочу хотя бы только такие полоски на таблице сделать. Это же не может быть прям рокет саенс.
>>1984306
Ну я думал что-то типа координат будет у ячеек. Типа классы "day-1 room_105" или атрибут data. И типа можно получить из этого данные, где был клик и где произошло отпускание клавиши. Ну наверное всякие драггабл типа так и работают. ЖС же может получать данные о координатах курсора.
Аноним 02/04/21 Птн 21:55:41 #495 №1984329 
>>1984325
Тебе наверн сначала надо модель сеточки которая пересчитывает дни в координаты и обратно, тогда рисовать и обрабатывать эвенты будет попроще
Аноним 02/04/21 Птн 22:03:45 #496 №1984344 
>>1984325
>Но я хочу хотя бы только такие полоски на таблице сделать.
Если строишь таблицу на <table>: атрибут colspan на элементе <td> - https://developer.mozilla.org/en-US/docs/Web/HTML/Element/td#attributes
Если строишь таблицу на CSS Grid: span в свойствах grid-column - https://developer.mozilla.org/en-US/docs/Web/CSS/grid-column
Аноним 02/04/21 Птн 22:20:41 #497 №1984371 
>>1984325
все проще, джс может обработать событие что курсор находится над другим элементом, координаты тоже знает

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

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

гугли css grid, css position, z-index и читай туториал по vue, там тебя интересует v-for, лайфцикл в частности mounted, компоненты, может ещё v-if, для загрузки данных fetch апи
Аноним 02/04/21 Птн 22:22:33 #498 №1984372 
>>1983568
Если кому-то интересно, че тут вообще происходит: emoji британского флага состоит из двух символов (code points) юникода - "Regional Indicator Symbol Letter G" и "Regional Indicator Symbol Letter B". Отображение этих двух символов в виде флага - это решение каждой отдельной программы. Firefox на винде, например, у меня этого не делает. Инверсия этих двух символов дает, соответственно, BG и флаг Болгарии. Это, конечно, вопрос разумных настроек по умолчанию, но в общем случае библиотека не может принять правильное решение без контекста.
Аноним 02/04/21 Птн 22:29:47 #499 №1984383 
>>1984372
это написано в вводной книге по джс
Аноним 02/04/21 Птн 22:38:05 #500 №1984387 
>>1984371
Спасибо!
Аноним 03/04/21 Суб 01:16:54 #501 №1984523 
Кто-нибудь на постоянке юзал webgl в проде?
Хочу отходить от заебавшего реакта во что-н свзяанное с графикой, на крайняк обработкой данный на видюхе, сейчас вот пилю простенькие системы частиц на webgl. Может поделитесь своей историей успеха работы с этой технологией.
Аноним 03/04/21 Суб 01:37:24 #502 №1984526 
>>1984523
Мотоцикл не мой, но соседи крутят модельки газовых турбин прямо в энтих ваших бровзерах
Аноним 03/04/21 Суб 02:10:31 #503 №1984545 
Screenshot1.png
ЧЯДНТ?
Аноним 03/04/21 Суб 02:19:29 #504 №1984549 
image.png
>>1984545
Аноним 03/04/21 Суб 02:40:21 #505 №1984554 
>>1984549
Ок. Я походу туплю.
В общем стоит геттер и сеттер на этом свойстве, которое возвращает другое свойство из прототипа. Если сеттер не использовался, то при обращении возвращает ошибку undefined в консоли.

Uncaught TypeError: Cannot read property 'backgroundColor' of undefined

Как проверить тут на undefined. Конструкции типа backgroundColor === undefined вызывают ошибку, т.к. обращение к несуществующему свойству. Через try/catch только ловить?
Аноним 03/04/21 Суб 04:33:15 #506 №1984563 
>>1984554
>Uncaught TypeError: Cannot read property 'backgroundColor' of undefined
это значит не то что backgroundColor неопределен, а то, что неопределен твой sheetCell

и вообще окраску надо делать умловно подключая ксс стили или на худой конец через style а не напрямую в доме
Аноним 03/04/21 Суб 08:46:30 #507 №1984583 
page.png
tests.png
>>1983927
Аноним 03/04/21 Суб 10:27:01 #508 №1984612 
image
>>1984611 (OP)
>>1984611 (OP)
>>1984611 (OP)
Аноним 03/04/21 Суб 10:32:49 #509 №1984616 
>>1984523
Ну, редкая ниша. В типичном вебе нахуй не надо, остается только в ентерпрайзе.
В коже ничего интересного на самом деле. Вебгл очень низкоуровневый, сам его ты вряд-ли будешь даже трогать, через лимбу какую-нибудь склрее.
Аноним 03/04/21 Суб 11:37:12 #510 №1984632 
>>1984153
Готов накодить тебе это за 30к или секс
вкатун дебил
Аноним 03/04/21 Суб 12:27:23 #511 №1984656 
У apexcharts есть какой-нибудь коммьюнити чат или форум?

Не получается одна херня, а спросить негде.
Аноним 21/04/21 Срд 19:25:15 #512 №2003754 
БЕМ БУТСТРАП JQUERY
это легаси для долбаебов?
Аноним 21/04/21 Срд 19:25:40 #513 №2003756 
>>1984656
стековерфлоу или официальный саппорт
comments powered by Disqus

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