Предыдущий: >>1562152 (OP)НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!Для программирования на ХТМЛ https://codepen.io/pen/Для Ноды с консолькой https://repl.it/languages/nodejsДля фреймворков https://codesandbox.io/Залить, задеплоить страничку, сервер, контейнер https://zeit.co/nowАноны, хочу получить советов мудрых, высераю пару предложений и код на скриншоте, а получаю смехуёчки. Как быть?Если рассчитываешь получить дельный ответ, формулируй правильно вопрос:У меня есть проблема\задача (А) %текст-ошибки или задача%. Я пытался решить ее так %кусок-кода-опционально% (Б), у меня не вышло %текст-ошибки%. Я погуглил, почитал документацию и попробовал сделать так %кусок-кода-%(В), но получаю ошибку (Г).Сделай песочницу по ссылкам выше для ясности и удобства. Если никогда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
>[ { id: 27 }, { id: 27 } ]нид хелп, что-то не вкурю, как убрать повторы из массива с объектами?на выходе должно остаться [{ id: 27 }]
>>1577320>>1577322там сложнее ситуация на самом деле @ массив состоит из вложенных массивов, в итоге я так это решил:let cache = [ [{ id: 27 } ], [ { id: 27 }] ];let ids = new Set([...cache.flat().map(item => item.id)]);console.log(ids) // {27}
>>1577320[ {id: 27}, {id: 24}, {id: 27}].filter((item, index, arr) => index === arr.findIndex(obj => obj.id === item.id) )
>>1577380Грубо, очень хочется вкатится и сильная мотивацияно после прочтения одной огромной темы почему то так всегдаи чисто физически не могу дальше продолжать читать
>>1577382Ну я тебе говорю, программирование не для тебя, причём тут мотивация, мотивации недостаточно, ты просто упираешься в свои физиологические возможности, твой мозг не приспособлен для интеллектуальной работы, вот и всё. Найди попроще дело.
>>1577362>>1577400не ок, при переходе на следующий индекс, она будет каждый раз весь массив перебирать
>>1577402O(n^2), для такой простой задаче это норм, преждевременная оптимизация - зло, set работает также
>>1577404Зависит от города. В моем миллионике с мувисерчером, файлообменником, канбаном, расширением для гугла (временный пароль и почта), парой сверстанных макетов не берут НИКУДА нахуй.
>>1577409>Now I have done some testing with console.time and it shows that the option 2 is 5 times faster that the option 1.сосай @ https://stackoverflow.com/questions/43870787/array-with-unique-values-indexof-vs-new-setа
>>1577410Так может проблема не в проектах, а как ты себя подаешь? если ты не можешь работать в команде и не умеешь общаться с людьми, то ты закономерно пойдешь нахуй
>>1577416Я не буду ссылку открывать и смотреть что там, мне это не нужно, я сказал всё, что хотел выше.
>>1577415Нижний Новгород>>1577421Ога, показал свои навыки работы в команды в резюме, на которой мне все отвечают отказом
>>1577423Хотя, я таки заглянул. Там даже автор ответа написалOption 1 isn't faster, but if we pretend it is then the answer is that it depends. Option 1 certainly won't scale as well as option 2, but that doesn't mean option 1 might not be faster for small enough arrays (although I doubt it). Either way, this is premature optimization. If your code is running slow, and you profile your code and identify this part as the bottleneck, then you should worry about it.Так что ты дурачок, ЧТД.
>>1577429Ну у меня-то опыт работы есть на бекенде, просто там слишком сложно, а во фронте всё как по маслу идёт, вот и перекатываюсь
я не знаю, есть ли будущее у ноды? ЖС как серверный язык?Вот веслаю почти год, а ощущение, что ну не подходит ЖС под бекенд.Кто-нибудь сталкивался с такими мыслями?
>>1577434Ну и работай дальше. Жопаскриптером на удаленку он захотел. Скоро вообще работы не будет никакой
Ананасы, кто шарит? Как в js рантайм выполняет async функции, которые не делают никакого IO? По идее, когда их await'ят, они должны возвращать уже фулфиллнутый промис. Но тогда никакой разницы нет с синхронной функцией. Но у кучи людей в коде вижу, что они non-io задачи гоняют через асинхронщину. В чём смысл? Это они чего-то не догоняют или я?
>>1577313 (OP)>A monad is a functor that you can flatMap Пиздец тред все глубже тонет в говнищеНадеюсь уже обоссали
Реактобояре тут? Как мне изменить стейт дочернего элемента, закешированного в компоненте таким образомthis.element = <Element />Не резон его постоянно обновлять прост
Как думаете можно ли красный и желтый блок, как на пикче, через div сверстать? А то у меня пропасть здесь образуется. Думаю в фотошоп зайти уже и сделать там, а вместо дива img добавить
>>1577564Эту дристню какие-то хохлы писали. Надо делать ссылки и через них менять стейт. Оче неудобно https://medium.com/@josesabike/change-child-state-from-parent-5d887db3eecd>>1577591Дели на 3 дива - красный, с картинкой и синий
>>1577596> красный, с картинкой и синийНу у меня вопрос состоит в том, что между дивами образуется небольшой абзац, хочу от него избавиться
>>1577613хуя, ты даже этого не знаешь, какое тестовое, алло, тебе ещё всего учить и учить, прежде чем тз брать
>>1577616Я яп хорошо знаю, вёрстку только сейчас по тестовым и начал изучать. Раньше вроде учил, но css полностью забыл
>>1577616ДА ОН ПИДАРАС ЕБАНЫЙ!!!! ЧТО ЗА НЕСПРАВЕДЛИВОСТЬ, ЛЮДИ!!!! ТАКОЙ БАРАН БЛЯТЬ ПОДАЕТ СВОИ СУКА ЗАЯВКИ И ЕМУ ТЕСТОВОЕ ДАЮТ. МНЕ ОТКАЗОМ НЕ ВСЕГДА ОТВЕЧАЮТ - ВСЕ ЗАЯВКИ ПРОСТО НА РАССМОТРЕНИИ ВИСЯТ И В АРХИВ ЛЕТЯТ. КАКОГО ХУЯ, ЛЮДИ?????????
>>1577622Ну чел, у меня есть проекты на других языках, мб чекнули гитхаб и дали тестовое, в чём проблема-то?
>>1577634У моих заявок ссылка на гитхаб. Я посмотрю как ты запоешь, когда в твоем городе не будет работы, а в других местах набирают любого как уже выяснилось не любого дебила, который знает что HTML это язык гипертекстовой разметки.
>>1577704Звучит так, будто ты один такой бедненький, никто кроме тебя невзгод не видал. Только вот не все такие становятся токсиками.
>>1577564Вот дали тебе функции, пропсы и декларативный подход, нет надо тащить какие-то лютые костыли императивные вперемешку с обоссаным this.
>>1577724А кем они должны быть?) Это если не учитывать твое убогое слово "токсик". Как они должны себя вести?)
Как писать на реакт не через npx create-react-app? Нужно учить бабель и вебпак? Стоит ли это того? Просто глаза мозолят три миллиона папок в node_modules.
>>1577758Вообще стоит, но>Просто глаза мозолят три миллиона папок в node_moduleОни у тебя в любом случае будут. Это же javascript и npm.
>>1577564Передай props в instrument, в чем проблема? Почему instrument это классовый компонентПиздец что за дауны так пишут
>>1577512Да я про то, что блокировать поток из js может только блокирующий IO. Если у нас нет IO, то выходит, что и не блокируется никто. А потому и профита от асинхронных функций не будет, если они не стучат на сервер, не читают файл и тд. Ну это как я вижу. В тырнете почему-то совсем по этому вопросу ничего нагуглить не могу, потому и спрашиваю.
Как можно выйти из рекурсии в данном случае? Goto, конечно же, не хочется применять, ведь если кто увидит, начнёт за это гнобить.Break; не работает с условием.
>>1577477Это все задумывалось для избавления от т.н. callback hell, когда одна асинхронная функция вызывает другую, которая вызывает третью, и так далее. Никаких профитов, кроме уменьшения вложенности функций, не дает. Дебажить цепочку из async/await ничем не легче, чем цепочку обычных колбэков, только табов меньше.
>>1577845Гнобить будут за setTimeout со строкой, а goto в JS нет.Для выхода из рекурсии помести вызов в условии, когда оно не выполнится - выйдешь из рекурсии.
>>1577943> с цсс особо и не работалНе понял - причем CSS и наличие вакансий? Разве в твоей же конторе нету фронтов, если бэк на шарпе пишется?
>>1577872Эх, я совсем неправильно выразился, но да ладно, ты подтолкнул вопрос ближе к делу. Вот есть io-bound задачи. Рантайм для них знает, что какая-то операция может заблокировать. И если ему сказано, то он делает неблокирующую операцию и идёт выполнять остальные задачи, если текующая ещё не выполнена. А в cpu-bound по идее ты никак и не можешь узнать, что возникнет блокировка. Вот этот момент мне и интересен. Пока await'ится cpu-bound промис и он заблокировал основной поток, будут ли вообще выполняться другие задачи?
>>1577946Обычно для шарпа (в 90% случаях ) учат JS/CSS/HTML, я думал вопрос к этому, что не знаешь фронта, но работаешь на шарпе.Вакансий не было в компании для фронтовиков.
>>1577949А в другие ты уже постучался или только сейчас фронт осваиваешь? Как долго на шарпе работал и как в него вкатился?
>>1577950> Как долго на шарпе работал и как в него вкатился?Я стажёром пару месяцев проработал. Стажёр - не совсем вкатился, но ладно. Вкратце - год изучал шарп и технологии asp.net ,web api.
>>1577947>и он заблокировал основной потокЭто ты правильно понял, ничего другого не будет выполнятьсяТут надо примеры смотреть, которые ты видел. Например, длинный cpu-bound можно разделить на части и выполнять понемношк последовательно в разных тасках, а промис резолвить когда все готово. Тогда у тебя и браузер доволен и пользователи целы.
>>1577727Мне классы проще понять>>1577793Как бы ты переписал этот код?>>1577797>Передай props в instrumentНу это и было вопросом, как передать
>>1578070Две ссылки с разными именами указывают на один объект. Какое имя собрался узнавать?Что-то мне подсказывает, что твою задачу можно решить с помощью словаря/хеш-таблицы
>>1577984>Как бы ты переписал этот код?Я другой анон, но отвечу.Тут проще выкинуть и заново написать. Все очень плохо, реально. Начни с того, что перестать пихать все в this и уж тем более блять в window. Где ты этот паттерн вообще увидел? Это нужно раз в год в специфических ситуациях. Храни все в this.state, обновляй его только через setState, не пиши в стейт из пропсов. Короче, вагон антипаттернов и плохого кода. Посмотри какой-нибудь курс по реакту или там доку почитай.По красоте делать еще дольше — нужно заменить классы на функции, впилить хуки, убрать setTimeout в пользу setInterval, подчищать его на анмаунте, учесть что компонент может быть размонтирован в момент вызова setState и т.д.
>>1578070nameно это не метод, а свойство глобального объекта, это свойство есть у любого объекта, включая любую функцию
>>1578116Хорошее свойство, мне нравится.var f = function(){};var g = f;g.name // fvar s = {};s.name // undefined
>>1578138>var f = function(){};var g = f;g.name // fЭто выглядит логичным. >var s = {};s.name // undefinedВполне логично. s.constructor.name === 'Object"видимо, я тебя не совсем правильно понял. Что ты ожидаешь увидеть? Может быть так:const obj = {}Object.keys({obj})[0]
>>1578116>это свойство есть у любого объекта, включая любую функциюМожет быть ты хотел сказать у любого прототипа?
>>1577845Возникла дикая идея обернуть твои условия в цилк который идет один раз. Тогда по идее break заработает. Попробуй
Аноны, кто разбирается. Есть такой код:let read_file = fs.createReadStream('./new/Стража!Стража!.txt'); read_file.on('readable', ()=>{let data = read_file.read();if(data === null){return}console.log(data);//хочу в первом же вызове события readable снять это событие с данного потока:read_file.removeListener('readable', ()=>{console.log('Снял событие readable');});//однако это не работает. В консоль выводится весь файл.//Но если использовать read_file.removeAllListener() - то получается как я хотел - выодится только один буфер. И дальше поток подвисает. });Кто знает - почему так? Событие readable испускается когда очередной буфер данных доступен для чтенения. Не пойму в этот момент поток подвисает ожидая пока выполнится колбэк? Или продолжает читать данные?У И. Кантора есть такие строки - " Пока мы не вызовем stream.read(), он дальше читать не будет." - соответственно и событие 'readable' эммитироваться не должно.
>>1578399Нет, мне не нужно было onse. Суть не в том что бы вызвать readable один раз, суть в удалении обработчка на любой итерации. Пять раз сработал - на шестом снял. Впрочем я разобрался уже.
>>1578406Так ты не Кантора читай, а доку:https://nodejs.org/api/stream.html#stream_class_stream_readable
Аноны, можно ли передавать local state детям, если я уверен что изменение этого стэйта будет синхронным среди детей?Так же мне не раз в треде писали, что я либо не знаком/ не пользуюсь call-back. Я не раз читал что есть call-back функции, но видимо я не ловлю какую-то важную суть. Можете придумать какое-нибудь тривиальное задание для меня, чтобы я сам себя проверил на знание call-back.
>>1578513У тебя даже вопрос сформулирован как-то по-нубски. Ты уверен, что понимаешь, как у JS работает интерпретатор? Почитай про это и вопросы о том, зачем нужны колбеки, отпадут сами.
>>1578520>>вообще, покажи пример задачи, где ты передаёшь local state детям, а то не оч понятно.Есть мувисерчер. Цель - сделать синхронизацию стэйта понравившихся фильмов (нажали на кнопку нравится ) со всеми разделами мувисерчера (поиск по фильмам, популярные фильмы, конкретный фильм и собственно сама компонента избранное). 1) Я знаю, что нормальные люди делают это через Redux, но как только я отказываюсь от life-cycle компонент я сразу впадаю вступор (где что должно быть).2) Я знаю, что можно аккуратно передавать детям функции, которые меняют стэйт родителя. Но выходит крайне убого.
>>1578551Я тут даже посоветовать ничего не смогу. Шесть лет писал на JS html5-игры (фронтэнд и бэкэнд), но имею крайне смутное представление, как функционируют сайты, где больше одной страницы, кек.
>>1578551Кекекек. Еще один прозрел, что вся "реактивность" реакт сводится к обязательному обновлению стейта.
>>1578518Пойду читать, возможно в этом и есть проблема.По поводу call-back. Вот это стало последней каплей, чтобы усомниться в своих знаниях (пикрелейтед). Мне сказали, что я не пользуюсь call-backами тут, хотя я не понимаю, что здесь можно call-backать.(речь про addFavouriteFilm)
>>1578575Да уж, язык надо подучить.> this.addFavouriteFilm = this.addFavouriteFilm.bind(this)в конструкторе? Серьёзно?Мне даже тяжело представить, зачем это может пригодиться. Ты где-то сохраняешь метод addFavouriteFilm экземпляра MainRoute, и затем вызываешь его?
>>1578579>в конструкторе? Серьёзно?Это кстати вполне себе практика устоявшаяся была.Правда, безвозвратно устарела, да.
>>1578581Я не понимаю смысла такой практики. Биндить this не нужно, если только ты не собираешься вызывать метод не через запись экземпляр.имяМетода()А где так вызывают?
Поцаны глупый вопрос, но что такое мувисерчер?Это какой то поисковик по фильмам или что, как он вообще должен выглядеть. Типо вводишь название фильма и он тебе дает ссылки на скачивание?
>>1578590я бы писалaddFavouriteFilm = {()=>this.addFavouriteFilm()}вряд ли там частое переиспользование забинденной ф-ции
Но спорить не буду, мне вообще этот jsx не нравится, выглядит так, будто зумеры заново открыли пэхапэ.
>>1578585>А где так вызывают?Интерналли это так и происходит>>1578596>addFavouriteFilm = {()=>this.addFavouriteFilm()}А вот эта хуйня ломает пьёр рендеринг.
>>1578597>мне вообще этот jsx не нравится, выглядит так, будто зумеры заново открыли пэхапэ.Скорее xaml в WPF.
>>1578596Зачем, если можно в методе использовать стрелочную функцию:addFavouriteFilm = (json) => { ... }
>>1577992Но за метки не гнобят, а гнобят за оператор, поэтому делаем вывод, что тупой жопаскриптер думал, что в его языке есть оператор goto
>>1578654Ты долбоеб? Нахуй его передавать, если он уже привязан? Нахуй ты высрался в этом треде? Не шаришь, не открывай ебло.
>>1578777>Ты долбоеб? Нахуй его передавать, если он уже привязан? Нахуй ты высрался в этом треде? Не шаришь, не открывай ебло.Пиздос ты олень, я же предлагал свою запись именно ВЗАМЕН биндинга.
>>1577320>>1577355Создаешь новый класс, у него определяешь приватный массив objects с массивами и метод addNew видаaddNew(newobj){if (objects.filter(e.e.id == newobj.id) returnobjects.push(newobj);}
Аноны есть тестовое задание, создать простой API для страниц, а я нихуя не понимаю как его сделать :(В задании Если параметры заданы так: params: { "range": { "by": "id", "start": 1, "max": 2 } }То API должен вернуть следующее:[ {"id": 1,"name": “my-app-001”, },{"id": 2,"name": "my-app-002", },]Я не понимаю как это реализовать, а именно параметры. Хоть убей, анончик помоги пожалуйста советом
>>1579003Ебать, да тебе парсить квери параметры придется на базе FSM, дружок. Нда, нечасто такое встретишь...
>>1579012>>1579010Вы троллите, или это реально не легкое задание ?Без jquery никак? Я думал тут можно будет обойтись Mango and express
>>1579003И что в этом непонятного, долбоеб? На сервере у тебя будет массив вида:[ [{id:1, name:"my-app-001"}], [{id:2,name:"my-app-002"}]]Парсишь запрос на api, и отправляешь следующее:let response = [];for (let i = params.range["start"]; i < params.range["max"]; i++){ if (myServerArray) response.push(myServerArray);}return response;
>>1579069Кстати, про параметр "max" у меня херня написана - я почему-то подумал про длину массива данных, хотя к айдишникам объектов она отношения может не иметь.
Вообще, задача-то простая, но может быть решена кучей способов. Возможно, они и хотят посмотреть, как ты сделаешь, чтобы быстрее искать объекты с нужными айдишниками, например.
>>1579093Ты мне предлагаешь за тебя всё тестовое написать, дегенерат? Посмотри как реализованы API, которые находятся в открытом доступе. Хотя можешь не смотреть, очевидно, что такого тупицу дальше тестовго не пустят.
>>1579003> params: { "range": { "by": "id", "start": 1, "max": 2 } }Шаблон Builder$derp = new QueryBuilder()->select('*')->from('derp')->where('id', '>', '1')->orderBy('id')->limit('2')->execute();Думаю идея понятна.
VSCode или WebStorm короче? Вроде оба пиздатые, но понять не могу на чем остановиться. Что VSCode лагает на огромном кол-ве дополнений, что WebStrom тормозит из коробки (но 90% всех дополнений имеет уже из коробки).Короче блять, не холивар конечно, но ваши доводы послушать интересно.
>>1579242Ничё что вебсторм платный?Так-то конечно он лучше. Вопросов даже нет.> код лагаетДиректорию node_modules заигнорь в .gitingnore файле, у меня ниче не лагает в проекте на ларавеле, где под сотню херни в нод_модулях и ещё пол сотни в вендоре. Комп - кипятильник с 8Гб памяти.
>>1579286>Ничё что вебсторм платный?Нормальные работы оплачивают.Ну для персонального использования стоит он всего $6 в месяц.А если вы ждуны без работы и денег, то наверное студентота и можно нахаляву его получить.Блять, крякать или раз в 30 дней директорию удалять в конце концов можно.
Сори за нубский вопрос, но как убрать косые черты в марке? Я уже специально воспользовался другим методом ставить кавычки, а они все равно появляются, что за хрень?
>>1579301>>или раз в 30 дней директорию удалять в конце концов можно.Там даже директорию не нужно удалять. Просто удаляй и ставь новый триал. Я даже персональные настрйоки не удаляю - и они сохраняются.
>>1579345Да блять, он стоит такие гроши специально, чтобы не заниматься вот такой вот хуетой и тратить время на удаление и установку (хоть это и занимает минуту).
Как создать в тайпскрипте дженерик, который бы принимал тип объекта и добавлял бы ко всем его значениям | null, чтобы каждому значению можно было null присвоить. Так не работает:type MakeNullable<T> = { [P in keyof T]: T[P] | null };
>>1579348На 6$ в Индии можно целый год питаться деликатесами и жить в комфортной однушке с видом на океан
>>1579463Лол, я действительно аутист. По ретурну их получал и думал что они так и будут выводится везде
Позвали на собеседование. В требованиях помимо всяких среактов алгориты и паттерны проектирования. Про алгоритмы отвечать из книжки "Грокаем алгоритмы"? А паттерны - это модуль, синглтон, декоратор?
Что стоит учить для разработки сайтов и веб-приложений(frontend) чтоб зря не пребывать время?- нативный JS- TS- React- Vue- работа с webpack/Babel/ESLint- GutЧем можно дополнить?И где посоветуете нормально выучить гит? Сейчас работаю фронтом, но пока на верстке, параллельно учу разработку. Не могу научиться работать с гитом, как учились вы?
>>1580042> Git*В гите умею самые базовые вещи: коммит, пуш, clone(из вебшторма)Остальное просто не понимаю. Закрыл уже кучу тасков на этих трех командах, дальше не продвигалсяИ что скажете насчёт тестов? Стоит тратить время на какой-нибудь Jest или бесполезная фигня?
>>1580055Коммерческая тоже разная бывает. Есть разработка сайтов "на заказ", где ты берешь вордпресс или 1с-битрикс, что-то ваяешь и отдаешь на пользование, или разработка для корпораций, которым нужно расширяемое и поддерживаемое веб-приложение, поэтому они нанимают команду разработчиков и пилят его годами на реакте.
Аноны, кто в теме - а как в nodejs работают потоки которые читаю каталоги?В доке написано о неких directory stream.Но через fs.createReadstream такой поток не создается. Он издает событие open, и падает в ошибку.
>>1580042>React, VueВыбери что-то одно, другое разве что в ознакомительных целях потыкайRedux/vuex в зависимости от выбора сверхуSSR, тесты>Не могу научиться работать с гитом, как учились выпришел на работу, сказали как делать жизненно необходимые вещи, остальное гуглил по мере надобности
>>1580059У нас аутсорс-контора, практически все битрикс/wp. После копания в этом говне я точно знаю, что хотел бы заниматься поддерживаемыми продуктами компаний, разработкой с нуля, возможно с NodeJS>>1580069Я уже освоил реакт, правда из проектов только туду и блог, одним словом - хрень, на работе пока нет нормальных проектов на реакте, пока сам не знаю что запилить интересное.Про вью слышал и видел синтаксис, понравилось. Кажется, реакт - не мое.
>>1580076Тогда тебе надо прошерстить вакансии в ДС на предмет требований. Обычно джентельменский набор фронтэнд разработчика - это React, Redux/Mobx, Typescript, Webpack, Node, Jest, Puppeteer/Cypress. Про такую мелочевку, как Docker и Git вообще молчу.Если тебе ничего кроме add, commit, push не надо, то скорее всего в репе ты работаешь один, поэтому забей.
Вопрос про react-router-dom. У меня все страницы находятся в BrowserRouter, но на одной из страниц находится вложенный HashRouter. Если в компоненте, который внутри HashRouter есть Link или NavLink, и их ссылке нужно как-то перейти на страницу из BrowserRouter (например главная страница сайта), то единственный вариант - это указывать полный путь с адресом сайта, да? Иначе все ссылки обрабатываются внутри HashRouter.
>>1580203>У меня все страницы находятся в BrowserRouter, но на одной из страниц находится вложенный HashRouterНаркоман? Я даже в теории не могу представить, зачем это может понадобиться.
Объясните ньюфагу почему он создает сетку через хтмл когда у него нарисована в картинге? Разве не проще вместо сетки просто использовать числа от 01 до 66? https://www.youtube.com/watch?v=lLAXIvdvqck&t=194s
>>1580413В сервис контейнере ларавела, который работает как депенденси инжектор, можно настроить создание любого класса в единственном экземпляре, т.е. как синглтон. Уверен, в любом другом нормальном инжекторе это тоже стандартная функция.
>>1580384Хороший фреймворк. Правда медленный. И порог вхождения выше, чем у всяких реактов. И весь хайп он проебал ещё в 2017, поэтому комьюнити небольшое и вакансий немного. Но все рано фреймворк очень приятный с правильными идеями лежащими в основе. На практике применяется когда нужно пилить массивный UI, где потребление ресурсов не критично, а от ангуляра тошнит и хочется чего-то в духе RoR.
Здоров, посоны. Бьюсь с проблемой уже неделю, а суть такова. Нужно набрать данных из одной базы, обработать их и сложить в другую. Все было заебись до тех пор пока я не подумал о том, что нода же однопоточная и было бы неплохо распараллелить это дело чтобы быстрее было. Так вот, воспользовался я пакетом BullMQ, это что-то вроде RabbitMQ, но нужен как раз для создания очереди работ, которые воркеры сами бы брали и обрабатывали. Работает пакет этот через Redis. По итогу отрабатывает как положено, быстрее чем в однопотоке, но есть одно НО. Каждый раз когда я запускаю обработку с одинаковыми входными данными, количество выходных данных всегда разное. То 45000 сохранится, то 65000. Это пиздец, я считаю. Никаких ошибок в ходе выполнения нет, все работы в редисе в статусе completed. Хуй знает что за дела вообще. Что можете сказать по этому поводу, котоны?
Привет, оранжевый.Кто тут в React'е разбирается, подскажите пожалуйста пару деталей, для более ясного представления приведу пример. Один из самых популярных примеров приложения на React это Todo-app. Представим вот этот самый Todo-app, и добавим сюда простенькое хранение заметок на сервере в базе данных.Я вижу два варианта получения данных, но не понимаю какой правильный(или оба правильные?):1. На чистом React. В самом компоненте, при помощи componentDidMount или useEffect отправлять запрос через fetch/xhr/axios, а ответ записывать в state. А на основании state отображать или лоадер, или массив компонентов-"заметок".2. Добавить redux, react-redux и какой-нибудь middleware. Создать store, объявить там isLoading, isLoaded, data, isError. Написать ещё 4 action generator: fecth, request, response, error, и обрабатывать запрос как сайд-эффект в redux-saga или fetch в redux-thunk. А на страничке отображать лоадер на основании store.getState() или props с connect()().Как правильно в общем? Или как лучше?
Такой вопрос к вкатывающимся в реакт - а вы вообще бэк изучаете, - ноду/пхп/питон?Или онли вэб-морда и JSON к АПИ сервера?
>>1580505Есть вариант, что ты пишешь в базу через транзакции, они у тебя роллбэчат, но ошибка не кидается.
>>1580506>1. На чистом React. В самом компоненте, при помощи componentDidMount или useEffectНе декларативно и нужно проверять размаунтился компонент или нет, перед тем как дергать setState.>2. Добавить redux, react-redux и какой-нибудь middleware.Тру вей, но слегка заебно писать бойлерплейт. Впрочем, все это абстрагируется.>Как правильно в общем?Любой из вариантов ок.>Или как лучше?Для простых задач я бы посоветовал react-async или его самописный аналог. Что-то вроде такого:const { data, error, isFetching } = useApi.get('todos');5-лет-в-реакте-господин
>>1580619Насколько я понимаю, при попытке параллельной доступе к базе SQL думает, что для некоторых транзакций ты получаешь неактуальные данные, и блокирует запись в базу. Изменение уровня изоляции снимет это ограничение.
Embeddable HTML/CSS/script engine for modern UI development https://sciter.comКто-то с такой вот штукой имел дело, как оно?
>>1580299>Наркоман? Я даже в теории не могу представить, зачем это может понадобиться.Для того, чтобы было удобно использовать hash-links, например для табов на одной странице.
>>1580641Попробовал все четыре уровня изоляции транзакций, также пробовал без транзакций вовсе - все результаты разные. Может тут играет роль не запись в базу, а чтение? Все воркеры, получается, одновременно считывают из базы данные с разными оффсетами только. Кстати, база источник - PostgreSQL, база назначение - MariaDB.
Аноны, посоветуйте что-нибудь посмотреть / почитать про redux для даунов. Я понимаю для чего он нужен и более-менее как нужно им пользоваться, но у меня все равно есть некоторые пробелы, которые не дают мне спокойно жить.
>>1580819спасибо, нашел. А есть вариант как-то включить субтитры, потому что на слух плохо английский воспринимаю.
>>1580920>Посоветуйте идею пета на реактеимидборду конечно же, ну или клон твиттера (только на бэке ленту активности сам не пиши, это блядский ад, а какой-нибудь GetStream потом заюзай)
>>1580974А ты коннектись напрямую к СУБД через вебсокеты, наверняка хипстеры что-нибудь уже придумали для этого.
Есть какой-нибудь туториал, где подробно расписывается паттерн обработки ошибок получения данных с API для Реакта? Типа ошибки соединения, ретраи, ошибки 401, 404 и т.д. Если все это просто обрабатывать в трай-кетче при маунте компонента, а потом писать тернарные условия в рендере, получается полная каша
>>1581022Тебе не надо обрабатывать эти ошибки, кроме 200ых, которые приходят с самого АПИ. 200ые ошибки указанны в доках к кому ты коннектишься, либо они сами тебе присылают что не так. А для всех остальных делаешь заглушку "ой что-то пошло не так". Если у них упал сервер, то тебе холодно или горячо от этого?
>>1581022Какое это отношение к реакту имеет вообще?>писать тернарные условия в рендере, получается полная кашаПримерно так и делают. Покажи код, где у тебя каша?
>>1581059Я вот как раз про эти заглушки, можно, конечно, писать условия "в лоб", типа if(error.status === 404) render (<NotFoundComponent />);if(error.status === 400) render (<FetchErrorComponent />);if(error.status === 401) render (<NotAuthorizedError />);render (<Component />)Может все же есть получше способ?
>>1581076Ну ты программист или что? Не можешь это абстрагировать?if (isFetching) return <Spinner />if (error) return <Error={error} />return ( ... )Или даже<DataProvider>{data => (...)}</DataProvider>
>>1581065если у клиента 400 ошибка, то он по умолчанию не откроет страницу и ему об этом скажем сам браузер. Что обрабатывать?
>>1581088> обработки ошибок получения данных с API для Реактареакт отправляет запрос к API, в запросе данные, которые сервер посчитал кривыми, сервер возвращает 400 ошибку. Её надо обработать на клиенте, иначе крашнется реактовское приложение.
Потихоньку вкатываюсь в TypeScript. Как правильно узнавать, какой тип указывать? Вот в данном случае как указать тип у value и items?Если убрать фигурные скобки, тогда тип WrappedComponent (из подсказки) ставится, но не работает (начинает ругаться на value={value})
>>1581334Тип надо указывать до равенства через двоеточие. У реакт компонентов он FunctionComponent<Props>, тип импортишь из библиотеки реакта.
Поясните за ангуляр и реакт чисто в двух словах что такое. И что такое сас. Не в смысле сасно, а сас. Может, сасс пишется, я только слышал. Так-то я JS знаю, но нужны ещё актуальные фреймворки.
>>1581369так себе мудрость.говорю же, я жс знаю как сам Эйх не знает.что не мешает всяким петухам валить меня на собесах вопросами о фреймворках
>>1581369> thisЧто об этом вообще можно учить?Отличия call от apply?this в стрелочных функциях?this при вызове через new?Даже не знаю, на чём тут можно погореть.
Хех, помню, меня на собеседовании спросили, что означает и зачем нужна такая строчка внутри функции:> let args = [ ].slice.call(arguments)А я ответил, что это быдлокод, и надо писать Array.prototype вместо [ ], дабы не создавать лишний массив.
>>1581383>дабы не создавать лишний массивСейчас бы думать о том, что создастся лишний массив.энтерпрайз-бог
>>1581457Ну я когда-то с челиками писал на хтмл5 игру для айфона, и чтобы не фризил сборщик мусора, мы даже i, j в циклах глобальные использовали. А тут подметать целый массив.
>>1581464Целевая оптимизация — дело хорошее и нужное.А позиция "это быдлокод, раз делает лишнюю работу", когда вся "лишняя работа" вместе взятая занимает 1% времени исполнения программы — контрпродуктивна.
Какой же JavaScript конченый язык, это пиздец!!!Вот это вот хуйняlet btn = document.querySelectorAll('.div1');btn.forEach(function(item, i, map){item.style.backgroundColor = 'red';});работает когда элементов класса div1 более 1 штуки в htmlа когда ее 1 то он блять возвращает псевдомассив который почему то typeof называет обьектом а мой код не может пропечатать ибо forEach может перебирать nodeList но не псевдокласс или обьектТакаааая залупаа я рот ебал этого языка
>>1581538Яваскрипт конечно конченый, но не здесь.querySelectorAll возвращает NodeList а не массив и от количества элементов это не зависит.>typeof называет обьектом Иди Флэнэгана читать мудила
>>1580620Работает реакт девелопером? С чего начинал? Есть какие-то важные вещи, которые нужны в работе, но не встречаются в документации?
>>1580564> И как решить какой использовать?Первый вариант, если что-то мелкое пилишь, второй, если что-то крупное, я так поступаю
>>1581591>Работает реакт девелопером?Ну да.>С чего начинал?С Objective C. А Реакт — с createClass и проекта уровня мувисерчера.>Есть какие-то важные вещи, которые нужны в работе, но не встречаются в документации?Не думаю. С опытом все придет.
Аноны кто шарит в Redux нужна помощь. У меня есть React-компонент. Он может обновить Store. Когда я внутри комонента я вызываю метод обновления хранилища и сразу после этого console.log(this.props.state) у меня показывает старый this.props.state, хотя потом props'ы обновляются и комонент перерисовываеться. Другими словами, у меня есть задержкк между обновлением хранилища и обновлением пропсов компонента. С чем это связано? Обновление пропсов это ассинхронный процесс что ли, или почему такая зедаржка?
Ребята!!! Как называется расширение для VS CODE которое по нажатию на F2 переименовывает все выделенные файлы??? Поудалял лишнего на свою голову...
Хотел сделать так, что бы вводился текст и в нем менялась каждая буква на заданную мной, сделал так.var str = prompt ('напишите текст', '');var newString = str.replace(/а/g,"ы");alert(newString);Меняется буква а на ы, всё окделаю такvar str = prompt ('напишите текст', '');var newString = str.replace(/а/g,"ы");var newString = str.replace(/б/g,"н");alert(newString);Пишу предложения с буквами а и б - менятся только буква а. Программировать учусь только, подскажите что читать или хотя бы наводку
>>1581756>var newString = str.replace(/а/g,"ы");>var newString = str.replace(/б/g,"н");Во-первых, ты зачем var пишешь повторно? Ты уже объявил переменную newString. Во-вторых, ты понимаешь, что у тебя сама-то str не меняется?Ты будто пишешьnewString = "абвгд".replace(/а/g,"ы"); newString = "абвгд".replace(/б/g,"н");
>>1581763>>1581766Разобрался, сори за беспокойство.var newString = str.replace(/а/g,"1").replace(/б/g, '2').replace(/в/g, '3')Вот оказывается как надо было
>>1581780>Вот оказывается как надо былоЭто мегахуёвый и медленный способ. Для буквенных замен лучше использовать такие самодельные хеши:let str = "питон";let new_str = '';let alters = { 'п': 'г', 'и': 'о', 'т': 'в', 'о': 'н', 'н': 'о'};for (let bukva of str) { new_str += alters[bukva];}console.log(new_str)
Аноны, подскажите.Я умею в бек на пхп, и немного на ноде. Решил изучить реакт немного.Сегодня полдня пердолился с документацией. Тудушечку запилил. Все это делалось на react create app. И вот подниму я сервер на ноде с экспрессом, а как состыковать то это с бандлом сформированным react create app?Чет попробовал просто отдать по маршруту '/' - нихуя не загрузилось.Где почитать подробно?
>>1581817Чет я не так себе это представлял.Я себе это так представлю - я собираю бандл реакта. Разворачиваю сервер на экспрессе. Допустим, в паблик пихаю скрипты самого реакта, и скрипт моего приложения.Потом по запросу "/" я отдаю хтмл страничку с <div id='root'></d>, и с тегами скрипт указывающими на мое реакт-приложение. Все это дела на клиенте разворачивается, и уже в реакт приложении аяксы к АПИ моего сервера.Т.е. сервак изначально отдает онли первую хтмл станицу, и скрипты реката и приложения на нем.И как же кросс-доменные запросы? JS с клиента без проблем отправляется онли на свой бекенд, сессии там, куки. Зачем два сервера?Где толков почитать? А то я прям вижу смузи-моря после как соберу из двух моих поделий Франки
Стоит тратить время и учиться разворачивать проекты с нуля на wepback или лучше всегда начинать на create-react-app?
>>1581836Разворачивай сначала вручную, будешь понимать что вообще происходит. В будущем это пригодится, кода придется донастраивать create-react-app самостоятельно.
>>1581836Так открой конфиг вебпака в CRA и изучай, что и почему там сделано там половина конфига состоит из комментарием
>>1581825Как бы ты себе это не представлял, два сервера удобнее. Статику хостить вообще изи, бесплатно на гитхабе, почти бесплатно на AWS.
Рекомендую вот этот скрипт - накатит конгфиг линтинга одним кликом https://github.com/paulolramos/eslint-prettier-airbnb-react И в VS Code установить eslint и prettier Пользуюсь уже год, зависимость есть, брат жив. Еще когда-то переделывал его под TypeScript, но проебал
>>1581865А потом ты соснешь тем, что статику потом еще с бэка придется отдавать. И привет nginx в докере.
>>1581877Можешь, если не в напряг объяснить варианты взаимодействия реакт и бэкенда.Изначально я видел это как то классически - бэк отдает одну страницу, в ней root и подгружающиеся скрипты - во всем этом строится приложение, которое уже взаимодействет с бэкендом.Проблема что я вижу - бандл может много весить - и первая загрузка сайта будет долгой.Но в реальности сейчас у меня какой то коктейль в голове, SPA смешалось в кучу с изоморфными приложениями, и отдельным сервером для реакт приложения.В сущности моя задача - простенькая. Я на реакт с помощью react create app сделал простенькое приложение которое должно отправлять на сервер запрос, и получать в ответ данные + картинку. И я не понимаю куда мне пихать собранный бандл, и нахуйя мне отдельный сервер статики для всего этого счастья, если статики и нет никакой.А если я просто хочу отдельные компоненты на реакт вставлять в свои классические шаблоны отдающиеся с сервера?Нахрен мне сервер статики?
Соц опрос, у всех ли бекендеры пидорасы и творят лютую хуйню с структурой отдаваемых данных или только у меня?
>>1580042- нативный JS- TS - React- Vue - это нахуй не нужно, удаляй сразу- работа с webpack/Babel/ESLint - да, но в 99% случаях на твоей работе уже будет все настроено , врящд ли тебя возьмут поднимать фронт с колен и возглавлять первые проекты
>>1581877Зачем статику отдавать с бэка? Бэк это тупо апи, он они про какую статику знать не должен и вообще может хоститься на другом урле.>И привет nginx в докере.Во-первых в чем проблема nginx в докере? Во-вторых, как я уже написал, есть куча сервисов которые сами все развернут без докера и даже фоллбек на index.html сделают.
>>1581887Так твой JS-бандл и index.html и есть статика. Это просто файлы, они не меняются. Хости их на Github Pages и все. В доке CRA даже целый раздел про это есть.>А если я просто хочу отдельные компоненты на реакт вставлять в свои классические шаблоны отдающиеся с сервера?То билди бандл в папку со статикой и подгружай JS в своих шаблонах. Но это наркомания какая-то, React сам по себе прекрасный шаблонизатор.
>>1581908>>Так твой JS-бандл и index.html и есть статика. Это просто файлы, они не меняютсяИ зачем мне этот отдельный сервер тогда? Я и своим отдать могу.У меня целая нода с кучей АПИ. В чем сакральный смысл отдельного сервера статики? Непонимат.Видимо слишком дохуя инфы за день. Короче буду пока как в доке указано - пилить небольшие компоненты на реакт для своих обычных шаблонов, пока просветление не придет.
>>1581906Есть у нас юзеры. У юзеров есть например аватарки. Они хранятся либо на бэк сервере, либо на удаленном файловом хранилище, но речь сейчас не про него. К файлам бэк должен иметь прямой доступ, а отдавать через ноду не комильфо, поэтому статику относящуюся к бэку отдаем nginx. На самом деле все решается очень просто. Если работаем на одном домене, точкой входа для всего у нас является nginx - он проксирует все запросы куда нужно. Uri начинающиеся с /api через proxy_pass отправляем на бэк, /static - в папку статик-файлов бэка, все остальное идет на фронт и отдаст index.html, который подтянет скрипты/стили и отрендерит твое react/vue/angular приложение, которое в зависимости от текущего url отрендерит нужные компоненты и подтянет нужные данные с бэка и дотянет если нужно какую нибудь статику, не относящуюся к приложению (те же самые аватарки)А докер позволяет просто не ебаться с настройкой сервера, в заранее у тебя на компьютере все сконфигурировать, а потом просто на боевом сервер просто запустить собранный контейнер.
>>1581933>К файлам бэк должен иметь прямой доступЭто неверно. Бэк должен хранить только урлы, сами файлы лучше держать на S3, например.Остальное в целом верно, но я не понимаю почему ты мне это рассказываешь.Мой посыл в том, что фронт и бэк это совершенно разные сервисы, которые ничего друг про друга знать не должны и уж тем более файлы фронта не должны лежать в контейнере бэка.
>>1581925Потому что фронты и бэк это два разных независимых друг от друга приложения и хранить их вместе немного странно. Если они у тебя уже связаны — ну штош, отдавай нодой тогда.
>>1581937Ну ты прав и да, я немного лукавлю. Контейнеры для бэка, фронта являются отдельными, иногда рядом еще контейнер с прокси, который клеит все вместе через docker-compose. В контейнере должен лежать только исполняемый код, все остальное (файлы пользователей, бд) вне контейнера. Бэк лишь обрабатывает и отправляет полученные файлы куда надо и записывает информацию о том, где их потом искать. По поводу s3, у нас например, необходимость хранить информацию на собственном сервере для соблюдения закона о защите персональных данных, поэтому все хранится рядом. Хотя скоро придется искать облачное хранилище под все это у какого нибудь мейла/яндекса. А рассказываю я это просто так, чтобы чувак выше может что-то для себя новое узнал.
>>1581946POST /data/GET /data/PUT /data/ это удобно?чем?вот что удобно: getData() addData({foo:1}) updateData({foo:2})
>>1581954>вот что удобно: getData() addData({foo:1}) updateData({foo:2})Ничто тебе не мешает сделать 3 таких эндпоинта, и чтобы у всех был условный POST
>>1581956Не канон. Эндпоинты не должны по хорошему являться действиями (глаголами). На практике приходится делать такое, но не надо такое делать для работы с данными. getData addData updateData это уже что-то вроде RPC, а не Rest
>>1581955ну тебе как фронту чем удобней весь перечень post/get/options/put/patchможно юзать один POST и радоваться жизниPOST getUser({id:1})POST getUsers()POST deleteUser({id:1})POST updateUser({id:1, data:{foo:1}})
>>1581960RPC > RESTc рестом пиздец лютый начинается на сложных запросах вида:PUT/user/1/type/54/name/342342нахуя так жить?
>>1581965> PUT/user/1/type/54/name/342342Обновить объект name c id 342342, который принадлежит type с id 54, пользователя с id 1.Мы видим что от чего зависит. Если ты можешь выкинуть какую то часть, то она и не нужно вовсе. Если у тебя у name уникальный ключ на всю систему, то можешь просто сделать эндпоинд вида /name/342342Например у нас есть Компании (id уникальный на всю систему), у которых есть тикеты (номер уникальный внутри компании), а у тикетов есть отчеты (номер уникальный внутри компании). Чтобы получить отчет то будет такой url: /company/1/tickets/100/report/100500 Но поскольку у нас уникальный номер отчета внутри компании, мы можем начать строить url от компании: /company/1/report/100500Единственное, что мы теряем тут, это понимание того, что отчет относится к тикетам. Если у нас есть отчеты к другим сущностям (к каким нибудь task, events) и они являются разными по своей структуре, то тогда нужна полная вложенность.
>>1582068Могу подтвердить, спрашивают и про this и как его проебать, и про bind call apply, и про bind.bind.bind, а также partial application через bind, и про strict mode иногда тоже
>>1581376>>1582068>>1582084Ну тогда расскажите об этом, а мы почитаем. Не копипастом на джслёрн, а своими словами, как на собеседовании бы и ответили. А то выглядит как "я знаю об этом, но тебе не расскажу, мучайся и страдай сам, я здесь только чтоб потешить какой я умный"
>>1582090Так тред то и создан для того чтоб джс в нем обсуждать. Я не говорю что мне кто-то должен, мне действительно интересно, как просто и лаконично об этом бы рассказали люди с опытом
Пидорасы, но есть ещё большие пидорасы – мобильщики сидящие на том же бэкенде.Они почему-то не могут у себя парсить и нормализовать данные и постоянно ноют что приходит число, а надо строку, у них ТИПИЗАЦИЯ и ОНИ НЕ МОГУТ у себя ничего сделать, бэк должен под них подстраиваться.Сука, и ведь подстраивается, а потом и мы транспорт переписываем.
>>1582106Так они не могут подстроиться. У них приложение не обновляются автоматически, поэтому у пользователей со старыми версиями все отвалится.
>>1582108Для этого вводится версионирование апишек, чтобы и клиенты старые работали и новые использовали новые плюшки.
>>1582088Rule of thumb:в sloppy при байнде значений nullable типов this ссылается на глобал/window, а в стрикте - принимает значение как есть;в sloppy при байнде примитивных значений this ссылается на boxed вариант переданного значения, в стрикте "как есть".
>>1582113Да, под айфон. Но не за деньги это делал, просто как хобби. В итоге веб как-то полезнее оказался и на работе тоже нужен был.
>>1582108На самом деле тут мы в такой жопе а не мобильщики.Наш фронт тоже проходит через ещё более анальный аналог аппстора-гуглмаркета, ещё более тормозной и ебанутый. Проталкивать новую версию месяц – рутинное явление, а пользователи обновляться ещё полгода будут.
Кто в индустрии SPA? На сколько сейчас SPA стали трендом? Обычные классические MPA уже вообще никому не нужны и не интересны, все заказывают себе SPAшки, перекатываются на них?
>>1581933>>1581937>>1581948>>1581971Спасибо, мне стало яснее как, и относительно понятно зачем все это на разных серверах.Возникло такой вопрс, я по тутору с офф. сайта https://ru.reactjs.org/docs/add-react-to-a-website.html пилю компонеты для своей странички. Трабла с babel и переводом из JSX в JS.Там есть блок в котором нужно локально babel установить, и выполнить команду "npx babel --watch src --out-dir . --presets react-app/prod" - это работает, но только когда папка src в корне, и преобразованные файлы из src кидает в корень сайта.А как в этой команде сделать так что бы готовый файл кидало в public/js/?
Опять выхожу на связь и борюсь с TypeScript.Сейчас использую redux-auth-wrapper, по примеру из документации обернул компонет, и все время получаю ошибкуType '{}' is missing the following properties from type 'Readonly<Readonly<InjectedAuthProps>>': isAuthenticated, isAuthenticatingts (2739) см. пикрилКакие бы подсказанные типы не подставлял - ошибка, и только с any работает. Что вообще хочет этот TypeScript?
1) Планирую стать фронтенд макакой. Друг сказал что лучше всего для начала изучить хтмл и цсс хотя бы на базовом уровне. Посоветовал для начала вкатиться сюда вот https://htmlacademy.ru/ и купить базовый курс за 300 рубчинских и двинуться дальше. Вопрос: это лучший из возможных ресурсов для обучения верстке или есть что то предпочтительнее?2) По поводу значимости вышки мне так ничего и не ясно. В процессе получения вышка по технической специальности, инженер в области нефти и газа но я так понимаю это полная хуйня и работодатель надо мной только посмеется?понимаю вопросы тут обсосались уже не раз и не два и не три, но не задать его я не могу :)
>>1582281Мертвая ниша где твое трудоустройство целиком и полностью зависит от наличия родственных связей. Работа предполагает нахождение в говне и моче по колено первый год, а потом итровцем нужно делать то же самое, только лопатой уже махать не приходится. А еще в любой момент даже мастера с зп в 120к это в моих пердях то могут отправить на УЧЕНИЯ ПО ЛОКАЛИЗАЦИИ АВАРИЙ и он будет пару дней кормить жопой комаров и срать в кустах.
>>1582219> Но в сообщении же написано что он от тебя хочетНу я понимаю, если я указываюconst AccountLink: React.ComponentClass<InjectedAuthProps, any>то TypeScript хочет вместо <AccountLink />, чтобы я писал <AccountLink isAuthenticated={true} />однако, если вместо InjectedAuthProps ставить any, то пакедж redux-auth-wrapper и так передает значения в эти пропсы, для этого он и нуженВопрос только, как правильно все указать, чтобы не оставлять тип any
Стоит ли вкатываться в js? мне на дваче написали, что выше хобби не рассчитывать, когда вкачусь, это так?
>>1582311> Нельзя. Исходники трогать запрещено законами физики.Тогда форкнуть и исправить :) Вообще я хуею: чел написал пакедж на тайпскрипте, а использование этого пакеджа на тайпскрипте превращается в придумывание костылей
>>1582365Посмотри сколько на hh вакансий с кейвордом javascript и реши сам, востребованы ли javascript программисты на рынке труда.
>>1582349>мне на дваче написали>пойду спрошу на дваче, правда ли на дваче пишут, ведь на дваче пиздеть не будут в отличии от двача
>>1582373Охуительные вопросы. Ты хочешь чтобы Двач за себя жизненные выборы делал? Тогда не вкатывайся, пожалуйста, не хочу с тобой работать.
Как искать выбивать ЗП, если не уверен в себе?Опыт 3 месяца, сижу на 2 годичном легаси говне, редакс + реакт, все делаю без проблем, получаю 70, вертки нетТип который был до меня, съебался в другую фирму за 200к, а блять за ним дохуя кода поправляю, он писал как уебок, чувствую себя недооцененным, но с другой стороны опыта у меня пока нет. До чистого фронта был фриланс на пхп и чистый гитхаб
>>1581963>можно юзать один POST и радоваться жизни>>POST getUser({id:1})>POST getUsers()>POST deleteUser({id:1})>POST updateUser({id:1, data:{foo:1}})Пиздец.
>>1582402> Как искать выбивать ЗП> Опыт 3 месяцаПока никак. Набери опыта минимум 3 года, тогда и поговорим.
>>1582410Так а хули толку, если я поправляю код за 3 летними?Я понимаю, что у меня нет опыта в тонкой настройке вебпака, в написании тестов, в тс, но блять, 3 года в этом говне вариться? Я не долбоеб. Вообще нихуя сложного в реакте нет. Сложное есть в архитектуре, сделать правильные HOC чтобы максимально переиспользовать код. Сейчас в проекте так много копирования, это пиздец бесит.Начал ерланг осваивать в свободное время.
>>1582526Мне кажется, что-то серьёзное на вебгл разрабатывать ещё рано: со стороны микрософта и эппла время от времени до сих пор раздаются кукареки о небезопасности этой технологии. И в чём-то они правы - прямой доступ к видеокарте для веб-странички как-то слишком.Так что будет обидно, если ты вложишься в проект на вебгл, а производители браузеров его возьмут и отключат по умолчанию, как когда-то случилось с ламповыми java-апплетами.
>>1582563Я не говорю о проектах, прям основанных на webgl, хотя бы просто рюшечки. Фоны, прогрессбары, реакция на мыш — такое всякое. Это ж копейки, не?
>>1582567Я не знаю, как сейчас, но раньше (лет пять назад) само наличие вебгл'а на странице заставляло мой браузер на секунду ЗАДУМАТЬСЯ. В общем, это тяжёлая херь, а не 2д-канвас, который загружается со скоростью дива.
Вот тебе, кстати, рюшечки на вебгл.https://threejs.org/Впрочем, ты наверняка их видел, раз про вебгл вспомнил вообще.
https://threejs.org/examples/?q=birds#webgl_gpgpu_birdsОпрос. У кого это работает медленно/не работает?
Может быть, дело в ленивых фронтендерах, которые не хотят в основы линейной алгебры, которые осваиваются за день?
>>1582570Так ДАААА, даже такая хуёвина может считать очень-очень быстро, и современный въэбдев вообще это никак не использует. И я уж не говорю о мамкиных майнерах, накупивших всяких 2080TI, которые тоже есть ЦА для некоторых сервисов. Стриминговых, например.
Проблема только в творческом. Придумать, как это использовать, и дизайнеры тут не помогут, они слишком тупые. Фронтендеры должны стремиться к creative developменту, и рассказывать лиду, что вона ещё как можно.
>>1582593Бизнесу эти свистоперделки нафиг не нужны. Бизнесу нужно, чтобы работало на телефонах и на всех браузерах, а это ты сделать заебешься. К тому же есть вебассемблай, где подобное тоже можно нарендерить, и скорее всего эффективнее будет за счет низкоуровневых языков.
>>1582603>>1582526хз, вангую технология слишком новая @ вот тебе 30 примеров сайтов с этой технологией, дерзай как грицца: https://www.awwwards.com/30-experimental-webgl-websites.html
>>1582471Хз, мне лень было тащить полифилл для ei11 и остального старья.>>1582480Критикуешь -- предлагай>>1582465Просто класс сервис, в котором некоторые кейсы уже забиты, например прием блоб файла, заголовки для него и тпПо сути это надо было, чтобы обрабатывать ошибки в одном месте, а у себя в компонентах логику ошибок уже не трогать.
>>1582288Олушок, функция внутри visibleonlyforauthenticated - react-компонент. Hoc пытается в него передать свойства, а ты их игнорируешь, на что тебе тайпскрипт и указал
>>1582593Проблема в том что сейчас главный приоритет это чтоб твой сайт удобно работал на любом мобильном говне. А эти ваши вебгл-рюшечки отсекают добрую половину пользователей.
Есть проблема, с которой давно борюсь а толку ноль - в конкретном репозитории не работает автодополнение в visual studio code.Не работает оно в каждой папке, в которую я устанавливаю редакс. При запуске vs можно одну строку успеть написать с автодополнением, но потом оно отключается, более того перестает работать во всех папках. Если я переключу язык редактора на другой, кроме жс или его + реакт - всё работает.Если взять и удалить папку node_modules - всё работает, ведь редакс перестает шкварить репозиторий.Гугл никакой помощи не предоставил, похожих проблем я не нашел. Jsconfig.json не помогает.Отключал все расширения - не помогает.Переустанавливал vs полностью - не помогает.Еще и винду недавно обновил - толку ноль.Это что, только у меня такая проблема? Вы можете создать реакт проект с редаксом и у вас всё работает? Почему у меня не работает? Возможно и вероятно, что я криворукий ублюдок - но почему только у меня такая проблема?Есть идеи решения, кроме как переход на другой редактор кода как будто там всё заработает
>>1582819разве НЕ практикуясь(усваивая материал и за этим решая задачи на основе пройденной темы), можно изучить и понять js?
>>1582853надо знать что есть в языке что бы решать задачи. в JS много легаси подходов, которые проповедуют в курсах.выучишь их - и будешь писать так в 2020. сложно переучится будет, так что нужен годный курс.
Господа, а скажите,поясните по пакету myslq для ноды:в доке такие слова: 1.Каждый метод, который вы вызываете для соединения, ставится в очередь и выполняется по порядку.Это значит что запрос к бд синхронен? Ниже следующий запрос блокирует I/O ? connection.connect();connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) { if (error) throw error; console.log('The solution is: ', results[0].solution);});connection.end();
>>1582878Тогда как программисты играют в шахматы, жопаскриптеры играют в доту и с, неконтролируемо стекающей слюной у рта, твердят, что это шахматы 21-го века.
>>1582885Это не стереотипы, а реальность. Программист должен постоянно развиваться, даже играя. Днём ты пишешь код за зарплату, к концу дня ты читаешь книги по программированию, освежаешь знания по алгоритмам и различным паттернам. А вечером ты отдыхаешь, играя в шахматы, развивая пространственное и алгоритмическое мышление.
>>1582896Проиграл. У тебя синдром маня-илитки.Щас в ойти кто только не въезжает, грузчики вчерашние блядь.Сейчас программирование на 90% это ремесло. Единственное что есть - порог входа высокий, и порог не по isq, а тупо по вьебу в это дерьмо времени
>>1582904Так это не программисты, а чернь - жопаскриптеры или просто жулики, которые не проходят дальше испытательного срока. Такие еще любят говорить, что математика не нужна, потом находят сумму чисел от 1 до n в цикле, лол.
>>1582918Прально. Надо тестировать только какое количество чашек кофе за сутки может выпить претендент.
Хорош ударяться в крайности.Сидеть после работы и ботанить - это дурь для 20-28 летних, у которых гормоны бурлят в крови и им нужно куда-то выплеснуть энергию. Кто-то готов стены ебать. Кто-то за вечер по книжке прочитывает. У кого куда энергия утилизируется.После работы нормальный программист занимается своей семьёй, уделяет внимание жене, уделяет внимание ребёнку, уделяет внимание бытовым проблемам, уделяет внимание 1-2 своим небольшим хобби. У кого-то это может быть опенсурс проектик. У кого-то спорт. У кого-то творчество. Хреново, на самом деле, если человек очень сильно зациклен, я считаю что программисту лучше всего иметь хобби не связанное с программированием.Учится и прокачивает скилы программист на работе. Для этого фирма его отправляет за счет фирмы учится, за счет фирмы на конференции, за счет фирмы покупает ему курсы-хуюрсы.Очень жалко, если в вашей фирме этого нет. Лично по моему опыту и опыту моих родителей инженеров, даже последний ИП-шник и то всё время шлёт своих сотрудников в поездки и командировки учится, узнавать новое, чтобы внедрять полученные знания на работе.А если ты будешь дома читать алгоритмы вместо жены, ребёнка и бытовухи, то просрёшь свою личную жизнь и словишь такой дипресняк, такие проблемы и такой пиздец, что твоя производительность труда не просто снизится, ты можешь вообще поехать крышей или спиться. Это происходит сплошь и рядом.
>>1582926>А если ты будешь дома читать алгоритмы вместо жены, ребёнка и бытовухи, то просрёшь свою личную жизньТак алгоритмы дома читают именно потому, что личной жизни нет и не предвидится, лол. А потом, да, депрессия, запой, увольнение и самовыпил.
>>1582953Ну такое. Какие-то скудные у человека абстракции в голове по поводу важных вещей в жизни и способов отдыха.
>>1582955Какие тут абстракции? Всё сугубо практично: в институте учился и не успел отхватить няшу-стесняшу. Теперь тебе под 30, на тебя смотрят только 25+ б/у тёлки. Всё, любви в этой жизни уже не будет, лучше изучить фреймворк.
>>1582960Любовь отнимается у человека не от возраста, а от тяжести грехов, которыми он нагрузил свою душу. Можно стараться жить праведно и если преуспеть в этом, Бог может восстановить то чувство любви, которое человек потерял. Так что если Бог есть, то не всё потеряно.Это точно JS тред?
>>1582960Ты тупо рефлексируешь что в детстве эмоции были ярче. Я конечно несправедливо обобщаю, но любой здравомыслящий человек поинмает что пустые эмоции без рациональной основы, насколько бы их много не было, не имеют никакой ценности.Это всё очень субъективно, потому изначально я и не ныл что в посте написана чушь. Наоборот, я просто сказал что в посте написана очень скудная, то есть очень простая и легко достигаемая абстракция.>>1582969Толсто.
>>1582971> ь очень простая и легко достигаемая абстракция.Типа, чувак, найти нормальную бабу в 30 можно, это блять совершенно легко, нужно просто не ныть на говнофорумах, а стараться. А вот построить ебаную ракету на марс уже не так просто.
Что использовать для просмотра того как сайт выглядит на мобилках? Гугл какое-то помойное говно. Во-первых: я выбираю телефон 360х720 - он мне рисует какую-то хуйню. Во-вторых: например, шрифт 16px на пк и мобиле выглядит одинакого, но гугл не эмулирует экран мобилки, а просто ограничивает размер окна, поэтому шрифт в 16px занимает все место.
Аноны, извините что немного не по теме. При клике на данный объект должно открываться окно загрузки файла.Следовательно, это должен быть label. Проблема в том, что у него есть тень вокруг и внутренний отступ от неё(эффект жирной рамки). При наведении должно затемняться изображение внутри. Как это можно сделать?Пробовал через img внутри и ::after с тёмным фоном для него, но не помогло.
>>1583099?Я вообще не кодер, но хотел бы написать тулзу для одной игрушки и подучить джс. И знаю что у вас всё кодят на электроне, когда я последний раз смотрел году там в 2018. А сейчас что?
>>1582926На самом деле личная и социальная жизнь пиздец как важна. У меня кент есть, и достаточно успешен, и социоблядь та еще. Брат его старший тоже человек - петросян, бывший квнщик, и бабло пожирнее смузи-сеньора рубит.Я им, будучи титаном-одиночества по доброму заидую. У них есть и работа, и семьи/дети, и социальная движуха.
ОХУЕТЬ!!! Решил проблему незаливающегося проекта на гитхаб пагес тем что поменял путь к файлу с "/хуй" на "хуй". КАКОГО ХУЯ ЭТО НЕ РАВНОЦЕННО??? И как тогда в процессе работы указывать пути к файлу???
>>1583162В человеческом мире "/" означает самую корневую директорию. Если ты хочешь от текущей папки указывать, то надо через "./". А вообще, поизучай человеческие ОС, много узнаешь полезного, в том числе и для веб разработки.
>>1583164Помогло, спасибо все равно ебаный сборщик выводит их через "/". А хули там изучать, игор нет, чтобы открыть папку без проблем нужно открывать гугл
Здарова, педики. Делаю пета на реакте, бек отдает ссылки в виде <a href='ag.ru'></a>, как преобразовать эти ссылки в Link элементы?
>>1583193Показывает нужду и ухудшает позицию на переговорах. Не делай так.Алсо, не надо коммитить в проект .vscode и открывать ссылки через window.open.Ну и без мобильной версии как-то уж совсем позорно в 2к20.
>>1583213> Показывает нужду и ухудшает позицию на переговорах. Не делай так.Ну это же шутка...> Алсо, не надо коммитить в проект .vscodeСлучайно туда попал> открывать ссылки через window.openА как?> Ну и без мобильной версии как-то уж совсем позорно в 2к20.А что у тебя за телефон? У меня в файрфоксе на всех работало.
>>1583216>Ну это же шутка...Подозреваю, что нет.>А как?<a>>А что у тебя за телефон? У меня в файрфоксе на всех работало.Это сафари. Ты молодец, конечно, поставил брейкпоинт на 400 и все. А на 401 верстка по пизде идет. Сайт должен хорошо выглядеть на любых разрешениях, а не только на в каком-то определенном промежутке.Алсо, если уменьшить высоту окна, то эффект тоже веселый.
>>1583224> Подозреваю, что нет.)> поставил брейкпоинт на 400 и все. А на 401 верстка по пизде идет.Нужно увеличить до 401 или есть нормальные способы? Я по другому не умею...
>>1583228Так поковыряй любой нормальный сайт может даже тот, на котором ты прямо сейчас и посмотри как у них сделано.
>>1582676> Олушок, функция внутри visibleonlyforauthenticated - react-компонент. Hoc пытается в него передать свойства, а ты их игнорируешь, на что тебе тайпскрипт и указалТак в том-то и дело, что эти два свойства не нужно вручную задавать, этим занимается redux-auth-wrapper.Если я явно укажу isAuthenticated={true} и передам в компонент, то смысла в redux-auth-wrapper нет
Аноны, смотрю чужой мувисерчер, чтобы осознать для себя некоторые вещи, но ей богу не понимаю : Почему он прокидывает эту функцию в пропсы и из пропсов её запускает? Почему нельзя было просто её заимпортить и сразу же вызывать? Возможно у меня вмятина вместо головы и если я не прав, то опишите как можно проще.
Почему в Реакте необходимо изменять стейт через setState?Из-за того, что прямое изменение ломает работу реакта или из-за того, что реакт не рендерит элемент, в котором используется стейт?
>>1583450Первое.https://stackoverflow.com/questions/35867038/what-the-difference-of-this-state-and-this-setstate-in-reactjs
Я прочитал на хабре, что Реакт нужен только если у вас супер динамичный сайт, нужны состояния, все меняется, переливается и вообще если вы написали скоростной фэйсбук. А в ином случае Реакт не нужен.А что использовать для маленьких малюсеньких сайтов? Жиквери? Или на чистом жс херачить? Или в бутстрапе есть готовые жс-ные заготовки?
>>1583455Сейчас все потихоньку стремится к супер динамичности. Это неизбежно. Да были и остаются маленькие сайты и их делают на один раз без поддержки, но годы идут.
>>1583455Маленьки сайты собираются в конструкторах.Или вообще без жс верстаются.А реакт не нужен для половины всего на чём он написан, просто он сейчас главная религия фронтенда.
>>1583455А чем реакт плох для просто так? Полдня потеребил доку - и хуяк ты пишешь простые , но удобные компоненты. Заебись, мне нравится. Две эти либы весят хуй да нихуя.>>Или на чистом жс херачить? При сложной логике на чистом JS даже с классами какие то лютые портянки получаются.В фэйсбуке внезапно не SPA, у них вообще вроде шаблоны php отдает. Так что задрочи нативный JS и причащайся к реакт.мимо-бэкендер
>>1583483> Полдня потеребил доку > Ещё полдня на доку по бабелю, вебпаку> Ещё день на редакс, рх-мобх-хуех> Три дня на тайпскрипт> и хуяк ты пишешь простые , но удобные компонентыКогда говорят реакт никогда не имеют в виду реакт (jsx шаблонизатор, виртуалдом и хуки), за кадром всегда стоит целая религия с сектами однопоточной направленности данных, декларативности и кучи других парадигм (все единственно верные).
>>1583499ты в gnirts ничего не передаешь и у тебя каждый раз из глобала подсасывается string, которая переопределяется и не имеет никакого результата
>>1583499Ты определил функцию gnirts как функцию не принимающую ни каких аргументов и при этом что-то в неё передаешь. Может быть в этом дело?
Можно ли сделать этакое навязчивое расширение для хрома, которое будет показывать модалку поверх окна браузера, скажем, каждые 10 минут?
>>1582848В общем решил проблему - там расширение typescript nightly что-то такое одно надо установить и всё магическим образом начинает работать. Оказалось, что это свежая проблема и в реакте и в вуе хрен ли у вас её не было? Все ж мувик делают
>>1583540>там расширение typescript nightlynightly - сырая дев версия. Их всегда устанавливают на свой страх и риск
>>1583455Напомню, что Реакт это не только хороший фреймворк, но и неплохой шаблонизатор. Так что при помощи некста или гетсби на нем и статику довольно удобно собирать.
>>1583786Я хуй знает как щас вкатываться с ноля, тем более во фронтред-жс.Был недавно в одной организации. У них ваканасия на JS. Я вообще бек на пхп пишу, а у них там nodaи реакт, я ею интересуюсь.Тестовое - написать что то типа мини блога - создаешь статью с текстом и картинкой, и эта статья сразу отображается в блоге. Морда- на рекат, бекендбек естественно тоже относится к тестовому нода + экспреес, база любая, ну и обязательная ORM.С бэком у меня в сущности не возникло проблем. А вот реакт пришлось поизучать.Так что нубарей со знанием нативного JS если и берут - то тупо по удаче.
Бомбит от этих ваших "рынок перегрет". Индустрии нужно переписать всё то многостраничное легаси говно, которое было написано за последние 10 лет на SPA стек, информатизировать все отрасли, а потом всё это поддерживать или перепиливать на ещё что-нибудь. Чё там у вас перегрето? Программистов жестко не хватает, чтобы всё это закодить. У нас на Госуслугах и в Сбербанке формы ФОРМЫ ФОРМЫ КАРЛ криво работают, а вы говорите что рынок перегрет. Да тут работы ояебу сколько. В 2к20 до сих пор нормально не работает квартплата через интернет. А они говорят что рынок перегрет, ну охуеть теперь.
>>1583897Вкатывальщик, ты крышей ебанулся?>>Индустрии нужно переписатьКакой блядь индустрии? Есть бизнес, есть дяди/тети которым им владеют. Нужно будет бизнесу - все будут хуярить на пхп 4-й версии вообще без JS. На SPA он все блядь собрался перености. А Фэйсбук чет на SPA не переезжает, и реакт юзает как либу для компонентов.Я хуею с кукаретников.
>>1583898> Какой блядь индустрии? Есть бизнес, есть дяди/тети которым им владеют. Нужно будет бизнесу - все будут хуярить на пхп 4-й версии вообще без JS.Бизнесу нужно удобное, современное и прибыльное. То есть SPA.> А Фэйсбук чет на SPA не переезжает, и реакт юзает как либу для компонентов.Потому что фейсбук - это как одноклассники, только в 1000 раз больше и богаче. Такой же конченый интерфейс, кстати.Посмотри лучше на современные социалочки, например на MeWe, охуенная тема и, как раз таки, SPA.
>>1583965>>Потому что фейсбук - это как одноклассникиФэйсбук создали реакт жи.>>Бизнесу нужно удобное, современное и прибыльное. Ах лол, проиграл с теоретика. Представляю как ты решаешь за дядю, который без твоих откровений сумел таки уже заработать на какой нибудь S-класс с черной икрой. Конечно он метнется все на SPA пиреписывать.
>>1583997Если он увидит что индустрия движется в эту сторону, то да. А она туда движется. Или считаешь что не движется?
В реакт приложении(пишу, используя хуки) есть компонент List который рендерит детей - Form и Item. Через форму мы добавляем Итем в Лист, и сейчас я хочу сделать редактирование - тыкнуть мышкой на один из итемов, данные из него вставятся в форму, мы их как-то изменим в форме, нажем добавить, но вместо добавления новой записи, изменится выбранная. Апи уже написано, осталось сделать логику во фронте. Как мне расширить использование формы добавления до редактирования? Пока что мысли такие: при клике на итем, у нас переменная forUpdate в List компоненте меняется на тру,(по дефолту стоит фолз). Далее мы должны как-то передать измененное значение переменной компоненту Форм(но ведь он при инициализации получил уже true?) . Нагуглил componentWillRecieveProps, но не могу понять как реализовать это с хуками. Хелп плиз
>>Если он увидит что индустрия движется в эту сторону...Зашел я на офф. сайт корпораци Xerox, вижу классическое меню, футер и всю хуйню. Теперь расскажи зачем им SPA? Или Xerox не корпорация?>>1584022Ну разве что в хипстерсих маня мечтах.Это просто когнитивное искажение, если что то ценишь - считаешь что и другие обязательно будут это ценить. Самые тупые к критике просто не готовы.Реакт в больших приложениях будут использовать несомненно. Но вот перетаскивать на SPA? Нахуя?
>>1584059Сам я только вкатываюсь в реакт. На сколько я уже понял, потомок родителю ничего не должен передавать на прямую. Потомок должен вызвать обработчик события, при этом этот обработчик должен быть методом родителя. Таким образом в родителя попадут данные от потомка - через аргумент переданный в обработчик события.Если неправ, поправьте.
>>1584063Да, уже смог сделать. А теперь мне надо через пропсы как-то передать эти данные другому потомку. Типа у нас было так:let dataForUpdate = {};<Form data={dataForUpdate} />Потом мы нажали на кнопку, данные записались в dataForUpdate, и теперь в Form, нам нужно как-бы заново получить значение этих пропсов. А у меня пока что только старые пропсы с пустым объектом.
Аноны, поясните мне за одну деталь в Реакте.Когда делаем классовую компоненту, то мы стейт можем просто объявить, а можем это сделать в конструкторе. В чём разница между этими подходами? Как делать правильнее?
>>1584032>Зашел я на офф. сайт корпораци Xerox, вижу классическое меню, футер и всю хуйню. Теперь расскажи зачем им SPA? Или Xerox не корпорация?>Ты еблан? Что такое СПА? На СПА не может быть футера и хэдера?
>>1584079Перенес в стейт. Теперь при нажатии на кнопку, у нас данные записываются в стейт родителя, но в потомке пропсы(которые берутся из этого стейта) - остаются прежними.Первые 2 строки - стейт и пропсы компонента Form во время инициализации. Следующие 2 - измененный стейт родителя и неизмененные пропсы потомка. Как сделать чтоб пропсы тоже менялись?
>>1584100Через хукиconst [dataForEdit, setDataForEdit] = useState({name: '', airports: '', scope: '', env: ''});И далее в коде вызываю сеттер:setDataForEdit({name: data.name, airports: data.airports, scope: data.scope, env: data.env});
>>1584100Может в потомке нужно как-то через определенный хук указывать, что эти пропсы могут изменяться?
>>1584029>Далее мы должны как-то передать измененное значение переменной компоненту Форм(но ведь он при инициализации получил уже true?)Через пропсы? В чем конкретно проблема?
>>1584169Ну да, офк через пропсы, только когда меняется dataForEdit в родителе, в форме не меняется <Form onAdd={addItemWithToken} onUpdate = {updateItemWithToken} dataForEdit={dataForEdit}>//consumerDataForEdit не меняется после изменения dataForEdit в родителеconst [consumerDataForEdit] = useState(props.dataForEdit);
>>1584173А можешь куда-нибудь код залить? по идее при изменении стейта у тебя должен перерендериться родительский компонент и соответственно новые пропсы передадутся потомку.
>>1584177Просто удали эту строку и используй переданные пропсы. Зачем создавать на их основе какой-то новый стейт? Разумеется, пропсы попадают туда в качестве дефолтного значения только в первый раз и потом не обновляются.
>>1584182>>1584178Да уж, хз зачем я в потомке стейт делал на основе пропсов, убрал и все ок стало. Вот что значит 15 часов подряд 3 дня из кода не вылезать.
>>1584650Ты блять программист или кто? Если программизд, то с такой хуйней как роскомпараша справишься. Хрр тьфу.А теперь вопрос: у меня сервер в какой то момент хуйню шлет вместо джсона, поймать её нереально но есть один трюк и мне нужно понять: SyntaxError: Unexpected token : in JSON at position 3Третья позиция это как у нормальных людей с нуля или с единицы?
Почему не обновляется стейт?Мне нужно чекнуть, есть ли в стейте незаполненные поля, и если есть, записать в них предыдущие значения из props.dataForEdit.Делаю копию стейта, пробегаюсь по ней, дозаполняю пустые свойства, вызываю setConsumerData(data); но после этого стейт не меняется (остаются пустые свойства, как и были)const handleSubmit = (e) => { e.preventDefault(); let data = {} Object.assign(data, consumerData); Object.keys(data).filter((key) => { if(data[key] === '') { console.log(data[key], '-', props.dataForEdit[key]); data[key] = props.dataForEdit[key]; } }); console.log(data); setConsumerData(data); console.log(consumerData);........
Посоветуйте идею для проекта чтобы собрать на гитхабе хотя бы 100 звездочек... И чтобы знаний много не требовалось...
>>1584724Спасибо, что-то не хочется слать свой трафик через VPN дяди, который весь его дампит себе на диски и парсит> Он же зойшифрованЗашифрован программой от того же самого дяди> У меня же httpsНу да, на 1000 сайтах у тебя https, а на 1001-ом пидорас программист передал данные по http и ты въебал свой пароль или другие данныеДа это и не нужно, потому что программа дяди просто пиздит у тебя прямо с диска\из памяти твой закрытый ключ и весь твой https идет по пизде, ты же не дампишь весь её трафик и не анализируешь его и у неё не открытые исходники
>>1584751Но он не работает. Далее в коде я вызываю метод апи, в который хочу передать измененный стейт.Насчет кода да, но я хз как по другому сделать проверку всех свойств в объекте.
Как правильно переопределять методы, которые наследуются от родителя?Вот допустим у меня есть класс Animal со свойством name и методом info(), который просто в консоль этот name выходит. Я делаю класс Dog, который наследуется от Animal и имеет своё свойства breed. Я хочу сделать так, чтобы info() у Dog выводил name и breed. Самый очевидный вариант, это просто переопределить info() у Dog так, как мне нужно. Но по факту мне просто слегка нужно изменить изначальный код. Можно ли как-то с помощью super.method() изменить внутренний код?
>>1584799Переопределяешь метод, вызываешь сначала метод родителя, после чего дописываешь дополнительный код.
>>1584929Так ведь тогда произойдёт вызов родительского метода, а я именно хочу изменить его работу.Вот например вот здесь: https://jsfiddle.net/efp8mkbq/У меня метод start в ExtendedClock отличается от start в Clock только тем, что там settimeout принимает параметр. Вот если я хочу поменять только эту строчку, то изменить её через super никак нельзя?
>>1584958Для этого не нужно создавать отдельный класс, либо делай поле, либо отдельный метод в классе Clock.
>>1584724JSON.parse('[1,w]') // С нуляА почему поймать нереально? Обернуть в try/catch, при ошибке писать лог с инфой о ситуации.
>>1585055Я в песочнице там ебусь, поэтому не могу увидеть ничего кроме ошибки парсинга. Сейчас просто смотрю все в текстовом режиме и ищу тот самый обосрамс, а мне памяти нехватает в полмегабайта.
>>1584084просто раньше нельзя было вроде как без конструктора. он то и сейчас вызывается при создании экземпляра класса, но неявно.такая же хуйня как и с биндом методов. А вообще в 99% случаев хватит и функционального компонента с хуками так что смотри в эту сторону
>>1583443эта функция - экшн. просто объект с полями type и payload или типа того. попробуй у себя в коде вызвать экшн который ты заимпортил. емнип обвалится с ошибкой типо expression is not callable
>>1581836еще можешь сделать в CRA react-scripts eject (прописано в package.json) и привести все что оно тебе высрет в норм вид
Можно в реакт+редакс сделать фетч по загрузке страницы, а не на каждый рендер? Можно ли вынести функцию которая вызывает диспатч в отдельный файл и передавать диспатч в качестве аргумента?
Заебали, каждый второй пост про Реакт. При том что он в 90% случаев нахуй не нужен. Одни долбоебы следующие как стадо за модой. Пора уже тред переименовывать, раз нормальных людей не осталось.
>>1585385Доля постов про реакт говорит лишь о том, что по реакту возникает больше вопросов, чем по ванилле, но не о том, что реакт используется в каждом втором проекте.
>>1585384>Можно в реакт+редакс сделать фетч по загрузке страницы, а не на каждый рендер? Вообще-то НУЖНО, render должен быть чистой функцией, а для сайд-эффектов есть хуки.>Можно ли вынести функцию которая вызывает диспатч в отдельный файл и передавать диспатч в качестве аргумента?Што? Зачем? Диспатч вообще не нужно трогать, пусть редакс сам к нему все биндит.
>>1585401Ну вот юзэффект вызывается на каждый рендер, юзстейт вызывает рендер при смене состояния. Мне нужно типо window.onload получить один раз информацию и записать в состояние её. Выносить в отдельный файл эту функцию я хочу потому что вне компонента window.onload работает, но тогда я не могу получить доступ к состоянию компонента.
>>1585413>Ну вот юзэффект вызывается на каждый рендерНу ебать, ты документацию-то почитай. Или Реакт юзаешь по принципу «пробуй все комбинации разной хуйни пока что-то не сработает»?>Выносить в отдельный файл эту функцию я хочу потому что вне компонента window.onload работает, но тогда я не могу получить доступ к состоянию компонента.Ты ерундой какой-то занимаешься.
>>1585446Да нахуй мне тебе демку кидать, если ты по скринам нихуя не понял, инвалид. Я домой пришел, сейчас буду смотреть гайды от нормальных людей на ютубе
>>1585634Девочка, тебе в инстаграмм надо было заходить, а не в этот тред. Ты ведь так с ума сойдешь от токсичности
>>1585636По-моему это тебе надо в b идти, к собратьям по разуму. Рулетко-треды крутить или что вы там делаете.
Аноны, хочу записаться на Яндекс Практикум Веб Разработка. Отрицательных отзывов не смог нагуглить, но смог найти куча негатива по Geekbrains. Собственно, есть тут кто-нибудь кто знает об этом. Иду туда не с нулевыми знаниями. Есть базовые знания Питона, JS, CSS и немного React + Redux, но и среди всего этого есть свои пробелы + порой некому задать вопрос. И я понимаю, что чудес не бывает и чтобы трудоустроиться нужно приложить много усилий.
Привет из МВП треда. Мы там выяснили, что в 2020 SpiderMonkey (Firefox) и V8 (Chrome) вычисляют> {} + {}по-разному. Можете ничего не отвечать.
Что то я тупой, или где в js аналоги pause или wait. Что за херня? Уже все перегуглил, нихуя из предложеного не пашет.Мне нахуй не нужно вызывать функции интервалами. У меня примитивный циклfor (var i = 1; i < 100; i++) { console.log(i);// здесь должен быть аналог wait(100);}Неужели вы хотите сказать что жс в такое не умеет?
>>1585798Да, не умеет. В JS культ асинхронщины, поэтому нет более изящного решения, чем это:function f(i) {console.log(i);setTimeout(f, 100, i + 1);}setTimeout(f, 100, 0);А все эти промисы - всего лишь обёртка над этим.
>>1585808Чет не хочет работать:>SyntaxError: await is only valid in async functions and async generators
>>1585817Ну чет как то совсем печально выходит. Притом это примитивный пример. А в реале я не представляю как весь пиздец в функции с таймаутами пихать.>>1585820Ну я тип обрадывался, что в твоем примере основной код не надо в функцию пихать, а по итогу он от меня все равно требует пихать. Ну и нахуй тогда оно нужно?
Сука, я сдаюсь - походу действительно придется всю свою гигантскую портянку оборочавать в асинхроную функцию, тупо чтобы эти сраный эвейтиы работали. Это пиздец как тупо выглядит. Если кто увидит - назовет меня ебалаем.
>>1585831Подумай ещё над архитектурой своей программы. Посмотри как вообще выглядят программы на современном JS в ноде. Программа, грубо говоря, состоит из асинхронных обработчиков всяких событий. И вся логика распихана по ним. Это позволяет нанять 100 макак, дать каждому написать по 1 хендлеру и через 24 часа твой проект будет готов и бабло будет на счете. Смекаешь?Сорян я просто тролю.
В чем проблема пихать весь код в функцию? Вообще-то все так и делают кроме любителей засират мусором глобальный скоуп.
>>1585824Никак, если Node.js используешь, используй Electron, там будет браузерная консоль с возможностью использования модулей
>>1585831Чтобы самоутвердиться, можешь почитать, как остальные пишут анимации и подобное, обмазываясь сеттаймаутами. Там такая лапша, что пиздец.
>>1585826https://jsbin.com/tumezecona/1/edit?js,consoleНо вообще ты скорее всего что-то не так делаешь, задача довольно странная. И это не sleep, другой код продолжит выполняться.
>>1585798>pause или waitты долбаёб? как ты себе представляешь в однопоточном рантайме pause или wait?
>>1586122если ты хочешь на самом деле остановить код, то тебе нужно смотреть релейт https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Statements/function*
>>1586138Никто не хочет останавливать код, в том посте ясно поставили задачу - задать определенный интервал после которого выполнение кода продолжится. И функция-генератор не останавливает код, она просто выходит из него с возможностью вернуться.
>>1577313 (OP)столкнулся в ноде с проблемой навигации по коду в visual studio code есть инструмент "Go to definition" который вызывается через клавишу Ф12, этот инструмент работает до тех пор, если в модуле есть ссылка на другой модуль через require()проблема в том, что если я например нахожусь в модуле router.js который подгружен например в app.js, я не могу из router.js попасть обратно в app.jsкак это решить? это довольно сильно усложняет разработку большого проекта, так как я не могу например просто так из model.js перейти в router.js и затем в app.js - это лишь работает в обратном направлении app.js -> router.js -> model.js
>>1586438расскажи что спрашивали на собеседовании или может ты делал какое-нибудь тестовое задание (если можешь, то сбрось, перед этим замазав все от деанона).Было ли у тебя портфолио? Ну и добавь, что-нибудь от себя, если считаешь это нужным.мимо другой
>>1582271Ебать, не спиздел.https://www.npmjs.com/package/react-barcode-readerСук, к чему только реакт не приделают. Реакт-дилда где-то по-любому есть.
>>1586727Базовые свойства неравномерны, от костылей хотя бы практическая польза есть, хоть и кратковременная единственная польза, интересная тырпрайзу.Получается рякт лучше угловика, потому что он хотя бы не говно, а угловик с жыдквери оба лучше вуя, потому что они хотя бы костыльные.
Анончики, я понимаю что это простая задача, но подскажите, я просто даже не знаю что искатьНужно на JQuery сделать так, чтобы при нажатии на одну из кнопок, к ней добавлялся стайл color:red, а при нажатии на другую, он удалялся и появлялся на нажатой кнопке, пример кода<div id="block"> <div class="botton">Кнопка 1</div> <div class="botton">Кнопка 2</div> <div class="botton">Кнопка 3</div> <div class="botton">Кнопка 4</div> <div class="botton">Кнопка 5</div></div>Стили.botton { float: left; padding: 10px; margin: 5px; background: green;}
>>1586834Во-первых button или btn. Во-вторых флоатами уже никто не пользуется, гугли флексбокс или гриды. В-третьих сделай это на JS. Если ты не понимаешь, как это делается на JS , то не лезь в JQuery. Гугли document.getElementsByClassName, onClick. Создай отдельный класс ред с бэкраундом рэд и добавляй его в атрибут класс. Добейся, чтобы у тебя бэкграунд главного класса все равно перекрашивался. Прочитай про приоритеты применения стилей. Сможешь сделать это, поймешь как сделать реверс эффект
>>1586881Я не на столько не разбираюсь, уже сделал с помощью $(this).css(), код в 10 раз меньше, по этому и JQueryФлетбоксы пока не признаю, надёжнее флоаты, пока есть старые браузеры, да и не хочу переписывать весь дизайн
>>1586904>Флетбоксы пока не признаю, надёжнее флоаты, пока есть старые браузеры, да и не хочу переписывать весь дизайнКакие? Ты IE9 все еще поддерживаешь?
>>1586541Был тест на знание жсТестовое было на создание меню с вложенностью любого уровня и редактированием пунктов меню на лету, по сути обычный круд с рекурсией из за вложенности. Верстку не делал, взял material ui, главное функционал.Опыта не было, портфолио тоже. На собеседованиях спрашивали готов ли жрать говно и копаться в легаси на жиквери, твердо и четко сказал нет, сижу на проектах на реакте, которые уже тоже легаси, за 2 года много чего поменялось.
>>1587198большое тебе спасибо! еще один вопрос: ты когда шел уже туда, ты понимал что твердо все знаешь (на уровне джуна) или были какие-то сомнения?
>>1587212Ясен хуй были сомнения. я и так то в себе не уверенный, а тут еще без опыта. За 3 месяца чувствую себя царем.
>>1587394Не заметил что у тебя *.js пизда тебе, ставь вебшторм, можешь попробовать в jsconfig.json поиграть. Но универсальный совет - используй TS уже, особенно если у тебя большой проект
Аноны, я уже изъебался над JQuery, есть вот такой вот запрос$.getJSON('2ch.json', function() {console.log('хуй соси')})Этот пидорас 2ch.json отдаёт статус 204, то есть ебучий консоль лог нихуя не выводится, как я понял он выполнится только при успешном запросе 200, как блять заставить выполниться консоль лог, если этот ебучий статус равен 204, .fail() тут нихуя тоже не делает, а .done() и .always() выполняют его при любом статусе, я думал я как самый умный смогу проверить статус таким способом$.getJSON('2ch.json').statusНо JQuery послал меня нахуй и в пиздуКороче мне надо чтобы при статусе 200 нихуя не было, а при статусе 204 он выполнял консоль лог, подскажите пожалуйста где я объебалсяв JQuery
>>1587481А с помощью $.getJSON это никак не сделать? Он же наверняка как-то наследует его параметры, от $.ajax
>>1587494Что этим сказать-то хотел? Я это видел и не понял как выполнить консоль лог, если статус джейсона 204
>>1587513Ну тогда пиздуй на https://javascript.info/ и учи азы, раз ты не понял. Или ты собрался с каждым пуком в тред бегать и срать в нём своим jquery?
https://repl.it/repls/RowdyJuicyDefragmentАнончик помоги тупому нубу.Как сделать getImagesUrls асинхронной?Только под конец понял что обосрался...
>>1587545Бля ну и чмо же ты, нет подсказать нормально русским языком, нет буду выёбываться и кидать ссылочки туда-сюда
Аноны, получаю данные по API с помощью$.getJSON('https://2ch.hk/abu.json', function() { console.log('обезьяна мама')});Бывает так, что статус ответа от сервера = 204, из-за чего просто ничего не происходит, как заставить это говно выполнить нужный мне скрипт, если прилетел статус ответа = 204, обязательно только передачей в function( data, textStatus, jqXHR )? Нет способа короче?
>>1577313 (OP)Господа, доброго времени суток. Я пришел сюда с очень тупыми вопросами. В общем, учусь сейчас на 2 курсе айти специальности, в универе преподают ссано+срано, поэтому решил заняться самообучением. Покурил сравнение языков и все такое, пришел к выводу, что для меня интереснее всего веб разработка - сайты и веб приложения. Более-менее сносно выучил уже HTML и CSS, вот пару недель назад взялся за JavaScript. Учу по кантору, вроде все норм идет.Теперь суть проблемы. Чем больше углубляюсь в тему, тем больше начинаю замечать неприятные вещи. Очень многие люди говорят, что веб разработка вроде как считается чуть ли не самым дном программирования, а работают в этой сфере только тупые макаки по крайне низким для программирования в целом зарплатам типа 20-30к. Так ли это? Если я получу вышку и буду знать HTML+CSS+JS+Angular, на какую зп я смогу рассчитывать в дс2? Возможно, мне стоит перекатиться в какой-нибудь другой язык, пока не поздно? Очень волнуюсь из-за всего этого, так как мало пока в теме понимаю, надеюсь, аноны, вы мне ответите. Заранее спасибо.
>>1587811Простите, что здесь спрашиваю, это, наверное, не совсем по теме треда, но мне с таким вопросом больше некуда идти...
>>1587811С этих 20-30к можно вырасти достаточно быстро. Впрочем тебе с корочкой наверно можно будет сразу на полноценного джуна нырять с 50к+.А насчёт зп - чекни дс2 хедхантер по ангуляру и узначешь примерный уровень зп. Но на рякте скорее всего больше вакансий будет.
>>1587813Как насчет сходить на хх и посмотреть зарплаты ангуляр миддлов и сеньоров? Или для тебя рынок труда считается меньшим авторитетом, чем мнение какие-то рандомных людей?
>>1587811доход веб девелопера зависит от стека, пик релейтнапример евпопке ФРГ с HTML+CSS+JS+Angula ты больше 2к € мес не прыгнешь
>>1587813Вот бы были такие сайты, где компании ищут сотрудников и выкладывают там вакансии с требуемыми навыками и зарплатами...
вопрос по учёбе сразу высрались, а как вопрос по теме треда тишина, идите нахуй бесполезные двачеры тупоголовые
>>1587838Сейчас бы помогать токсичном залетышу из б, который только и умеет, что слюной брызгать и всех нахуй посылать.
>>1587816Спасибо за ответ. Я пока конкретный фреймворк не выбрал, так что, может,буду учить реакт или вью. В любом случае, пока что чистый жс учу. Вырасти можно достаточно быстро, а до каких примерно зарплат? Скажем, я устроился на 30к ну пожалуйста, ну хотя бы 40, отработал год, дальше на что можно претендовать?>>1587820>>1587829Да я и хедхантер, и авито работу, и даже апворк на всякий случай уже вдоль и поперек излазил и представляю, какая там ситуация, НО в том-то и дело, что как-то это расходится с тем, что люди вокруг говорят, поэтому я и пришел сюда, где мне ответит кто-нибудь с реальным опытом нахождения в индустрии.>>1587824Ты имеешь в виду, что надо знать дополнительно всякие штуки типа SCSS, webpack, Git, XML и т.д. или что-то другое совершенно? Какой нужен стак фронтендеру, чтобы прилично зарабатывать? Время учиться у меня пока есть, желание тоже.
>>1587883> дальше на что можно претендоватьЗависит от города и компаний в немесли не рассматривать переездТебе за одни и те же навыки могут предложить как 30, так и 80, это сложно предугадать. Я пол года проработал за 30 -> надоело работать за копейки -> прыгнул на 50. По наблюдениям за хх, в моей мухосрани ~80 за год опыта на рекате платят
>>1587883>Скажем, я устроился на 30к ну пожалуйста, ну хотя бы 40, отработал год, дальше на что можно претендовать?Нет таких вакансий. Ты или устраиваешься на 50-80к (в ДС) как перспективный джун который сходу может что-то делать, либо идешь нахуй. Дальше, если ты не овощ, зарплата будет расти где-то на 30к в год. Где-то до 250к. Потом сложнее.>Какой нужен стак фронтендеру, чтобы прилично зарабатывать? Реакт и окружение.>например евпопке ФРГ с HTML+CSS+JS+Angula ты больше 2к € мес не прыгнешьЭто, кстати, чушь полная, в Германии 18к минималка, а 24к это уровень работника мака. Разработчики получают 60-80 минимум.
>>1587946А зачем работал за копейки, если сразу мог 50 получать вместо 30? Или это из-за того, что опыта не было?>>1587947Ну я не овощ, учу каждый день в свободное время часа по 3-4. Англ знаю заебись. Единственное, что опыта нет и хз, где его получать - на том же хх без опыта предлагают зарплаты типа 25к. Живу в дс2, в дс1 не хочу перекатываться, не нравится город. К реакту присмотрюсь, часто его в требованиях тоже встречал.Спасибо всем анонам за инфу и мнения. Ещё хочу немного вернуться к своему первоначальному вопросу, то есть, получается так. Вебдев не говно, достойный раздел программирования и по зарплатам не проигрывает (ну или не сильно проигрывает) остальным? Стоит продолжать учить JS и сопутствующие вещи, так как перспектива в этом есть? С вышкой и норм знаниями по теме на 20-30к в дс2 сидеть не придется?
>>1588143Платят не меньше, работы полно для толковых спецов. И тебе разве не похуй, как к этому относятся псевдоилитарные байтоебы из НИИ в забрызганных супами вязаных свитерах? Ты деньги пришел зарабатывать, вроде как.
>>1588143Да хуйня из-под коня твой вебдев. Веб макаки среди программистов это мусор лоу уровня и зарплаты у них соответствующие. 40к твой потолок будет, 50 с вышкой лол. Лучше забей на это говно и дрочи математику и прогай архитектуры. Студентота блять.
>>1588151Мне на отношение к этому кого-либо наплевать, я действительно хочу зарабатывать и готов работать. Просто я сюда потому и написал, что начал волноваться, из-за того, что много от кого слышу, что денег в этой сфере уже нет. Но вы меня успокоили, спасибо.Хотя вот пример того, что я часто слышу, прямо золотой пример, пиздец: >>1588153
>>1587947> а 24к это уровень работника макакек, 8,5 евро в час минималка - и это уровень работника макавеб макака с таким стеком как было обозначено Аноном будет получать ~12 евро/часбайтослесарь 17 евро/час
>>1588143>Вебдев не говно, достойный раздел программирования и по зарплатам не проигрывает (ну или не сильно проигрывает) остальным?Всё современное программированние - сорта говна. За фронтэнд просто платят лучше.
>>1588448> Всё современное программированние - сорта говнаА старинное? Когда писали процедурные простыни кода, гвоздями прибитые к одной архитектуре?
>>1588157>много от кого слышу, что денег в этой сфере уже нет.Это скорее всего байтоёбы пиздят, ковыряясь в каком-нибудь 1с говне или прочем вендор-локе.Деньги в сферу привозят заморские бояре, а местные кабанчики продают рабов местных этим боярам. Так что деньги закончатся только если Федеральный Резерв полностью наебнётся.У тебя проблем не будет с первой работой, так как профильная вышка и студент - любимая комба для хрюш. Впрочем маразма в виде собеседований не убавится, так что не сильно расстраивайся если первые собесы будут кринжовыми.Главное вышку не дропай, а когда выйдешь на зп мидла - подумывай, как завести трактор.
Поцаны, сгонял на 20 собесов.джун.взяли на работу за 170к думая что я синьер или мидл. (ответил на все вопросы)идти или нет?
>>1588459Зп мидла - это начиная с какой по дс2? А трактор да, хотелось бы, к тому же ангельский уже знаю норм. В Канаду куда-нибудь... Но это мечты, я слабо верю, что смогу свалить заграницу.
Где здесь ошибка посоны?<div class="test"><div>Хуй</div><div>Пизда</div><div>Джигурда</div></div>$('.test div')[0].css('background', 'red')Как покрасить только 1 div
>>1588614В развитии у тебя ошибка. Ты серьезно пытаешься представить жкверевские функции как массив?Тогда хотя бы так действуй: let hui = document.getElementsByClassName('test')
>>1588617Я с помощью [0] и пытался выбрать только 1 элемент>>1588621Нужно именно с помощью jq без ванилыТогда как на jq выбрать первый элемент из всех дочерних?
>>1588637Без ванилы представь айдишник нужному диву, и обращайся конкретно к нему. Нахуя эта еботня с номерами?
>>1588637>Тогда как на jq выбрать первый элемент из всех дочерних?Сука блядь мудака ебаный, не используй jq для обозначения jQuery, jq это консольная программа для парсинга JSON.
Двачик, привет, я js-react самоучка, собираюсь в ближайшее время начинать ходить на собеседования, чтобы устроится frontend/react junior'ом, нужны идеи сайтов для портфолио. Уже сделал сайт с прогнозом погоды, какой-то Todo-app и сверстал какой-то рандомный макет. Что добавить, чтобы совсем зелёным не выглядеть на собеседовании?. И реквестирую анонов которые недавно устраивались по моему направлению, как оно там?
>>1588642Прикол в том что дивов может быть больше 3 штук и айди у них могут быть рандомные, по этому и нужно выбрать именно 1>>1588652Скажи просто как выбрать 1 див из кучи дочерних, дальше я пойму>>1588659JQ
Объясните идиоту, почему этот код работает правильно?https://jsfiddle.net/zjqe0f7c/Почему у нас head правильно запоминает и отслеживает все изменения, если мы постоянно меняем dummy?Я понимаю, что делает алгоритм, но не понимаю, почему на ЖС он работает именно в таком виде.
>>1588726я в школе ебланил, хуёво сдал экзамены, а идти на какую-то компьютерную безопасность, или смежные специальности не хотелось. Пошёл в шарагу на поит
>>1588702Я не знаю, как выбрать 1 див. Чтобы узнать — надо сделать console.log($('.test div')[0]) и посмотреть, что там есть. Если ничего нет, значит надо сделать console.log($('.test div')) и посмотреть, что там есть.
>>1588668>И реквестирую анонов которые недавно устраивались по моему направлению, как оно там?Сам из ДС, сейчас рассылаю резюме почти на всё подряд. Ни разу даже на собес не позвали. Видимо что-то не так с портфолио, что не зовут. Мб есть гайды по тому, как правильно их оформить?
>>1588607тупо выучил, спросили чем отличается интерфейс от типа - дал ответ.но не использовал никогда typescriptтупо выучил ответы
>>1588614Есть такой селекторhttps://developer.mozilla.org/en-US/docs/Web/CSS/:first-child$(".test div:first-child")>>1588733Потому что в переменную сохраняется ссылка на объект.Представь, что объект это коробка. Тогда переменная будет только ярлык на этой коробке.let label = {isBox: true}При первых присвоениях там на первой коробке висят два ярлыка. Дальше внутри цикла ярлык dummy пошли переклеивать на другие коробки (объкты). Это никак не влияет на первую коробку и на оставшийся head на ней.
>>1588772>$(".test div:first-child")Видел этот способ, он единственный? Неужели никак нельзя как в ваниле с помощью индекса?
>>1588732Например, 70% работодателей в этой стране и 90% работодателей за рубежом? Ну это так, мелочи. Ты не парься. Свои 20к без вышки ты заработаешь, так что все заебись.
>>1588804https://api.jquery.com/first/https://learn.jquery.com/using-jquery-core/jquery-object/#getting-elements-into-the-jquery-objecthttps://api.jquery.com/get/Тебя шапка сразу просит сделать песочницу. Метод со скобками должен работать. Но у тебя он не работает и мы не ебём почему.И если тебе надо "ещё как нибудь" иди и сам копайся в документации.>>1588847Очень понравился. Я аж ответил. А тебе ответ не понравился? Чем?
>>1588864Я блядь в час ночи выясняю, как в Жиквери по индексу элемент получить в 2020.ХЕЛЛОУ ДАРКНЕСС МАЙ ОЛД ФРЕНДПо индексу вернётся уже не Жикверя$('.test div')[0] --> HTMLElementнадо из этого снова объект Жиквери делать$($('.test div')[0])Проще пользоваться get методом конечно же.
Поцаны, что нужно знать в JS , что бы быть синьером за 200к в месяц в ДС?с мидлом то все ясно, но что ожидать от синьерских вакансий?
>>1588925Прям эталонный выебщик.Спредонул всю коллекцию произвольной длины, чтоб получить _первый_ элемент. И ушёл победителем.
>>1588935Да, не вижу в этой ничего плохого.Зачем экономить на спичках?Вот если бы там было 100 000 ссылок, тогда да...но такого не бывает в фронте, максимум пару тысяч.
>>1588940Да, он вообще не коллекцию возвращает и спред упадёт с ТайпЕрор. Я уже тупеть начал, а выебщик ещё жирнее оказался.>>1588924То же, что и джуну, только давно.
>>1588742Анон, не переживай, запомни самое главное - ты все учил и делал сам, а это многое значит в наше время. Продолжай дальше искать и через какое-то время ты обретешь свою удачу. Главное не опускай руки и всегда думай об это >>ты все учил и делал сам, а это многое значит в наше время
>>1588924>с мидлом то все ясно, но что ожидать от синьерских вакансий?Софт скиллы пиздобольство.Умение продать кнопку как неебаться новую теху, в которую заказчик должен влошиться.Умение разгружать крудошлёпство на подчинённых макак.
Решил научиться связывать фронт с бэком, делаю rest-api туду на реакте.Проблема в следующем:В Fiebase есть запись, в ней хранятся объекты todo. Я получаю их с axios в виде объекта. Теперь вопрос:Как их выводить на странице? Так как это объект с объектами внутри, map не работает. В планах было так: в TodoList.tsx вызываю метод класса Firebase.ts, который возвращает массив с todo-объектами и разворачиваю его с помощью map. Как сделать правильно? Код из 2 и 3 скринов неактуальный, пока не придумал верного решения
Как написать функцию которая подождет пока переменная получит данные, а потом их выведет? Пытался пользоваться async/await, но не знаю как правильно
Анонсы, почему $('div').data('test', '123') не добавляет в див data-test='123'? Но проставленное вручную $('div').data('test') выводит?
>>1589168То есть не появляется в коде, приходится использовать .attr(), а точнее .data() помещает эти данные в память, но не в сам код, почему?
>>1589161Есть примеры с рендерингом через этот метод?>>1589192Так это ФП, я вынес методы для работы с БД в класс, чтоб переиспользовать в разных местах
>>1589155const pause = (ms)=> new Promise((resolve)=>setTimeout(reslve, ms) await pause(3000)мимо стажер JS
>>1589197Object.entries({a:1,b:2}).map(([key, data])=><div>{key} {data.created} </div>)мимо стажер JS
Посоны, есть 5 json запросов на 5 разных серверов, столкнулся с тем что каждый из них отвечает с разной задержкой, от чего результаты постоянно приходят рандомно, как лучше чтобы минимум кода заставить отрабатывать их результаты в нужном порядке? Использую для получения результата jquery, отсюда вопрос сколько времени ждёт .done(function(){}) прежде чем начнёт выполнять функцию, что будет если один из серверов будет недоступен? Ведь если сделать очерёдность выполения с помощью if, то при недоступности 1 из серверов, результаты следующего не будут выполнены, а если добавить ещё и else то код растёт в геометрической прогрессии, надеюсь понятно объяснилИ как получить доступ к переменным созданным внутри анонимной функции в .done(function(){}), создавать переменные с помощью const? Не у кого спросить чтобы понять кроме вас посоны, а найти ответ среди тонны информации иногда просто нереально
>>1589216>Использую для получения результата jqueryЗря. Так-то 2к20 на дворе.>jquery, отсюда вопрос сколько времени ждёт .done(function(){}) прежде чем начнёт выполнять функцию, что будет если один из серверов будет недоступен?Не знал, что, у jquery нет документации.>И как получить доступ к переменным созданным внутри анонимной функции в .done(function(){})???Используй fetch или обертку над ним (axios, etc.). Если нужно последовательно, то .then, если параллельно, то Promise.all.
>>1589227>>1589230Ну смотрите, сделаю я с помощью Promise последовательно, а что будет если например 3 сервер неработает, разве код не зависнет на получении данных с 3 сервера? Ну или если даже пропустит его из-за долгого ожидания, а вдруг после этого 3 сервер пришёл ответ, что тогда, короче я завис, у меня по умолчанию выводятся поля от всех серверов, и после обращения к серверам те что не ответили, должны скрыть свои поля, а те что ответили заполнить их, а тут получается что 3 сервер поздно ответил и код сочёл что он недоступен и удалил его поле, а сервер то на самом деле жив, просто задержался, надеюсь понятно разъяснил, снова>Зря. Так-то 2к20 на дворе.А что в 2020 модно? Мне казалось jquery это всегда актуально, особенно если движок сайта сам его подключает по дефолту
>>1589245Мне кажется, если он жквери пользуется, это обычный кабанчик, который хочет свой сайт в интернете продвинуть, а на программирование ему срать. Поэтому учить он ничего не будет.
>>1589249А что не так с жквери? Это же просто библиотека для упрощения конструкций. Что в этом плохого?Мимо
>>1589236>что будет если например 3 сервер неработает, разве код не зависнет на получении данных с 3 сервера?Ну так поставь таймаут реквесту.>Ну или если даже пропустит его из-за долгого ожиданияЭто как вообще?>должны скрыть свои поля, а те что ответили заполнить ихОк сделай такую логику, в чем проблема?>получается что 3 сервер поздно ответил и код сочёл что он недоступен и удалил его поле, а сервер то на самом деле жив, просто задержалсяНу а клиенту-то откуда знать что там с сервером происходит? Ты определился бы для начала какую логику вообще хочешь реализовать.>А что в 2020 модно?Ванильный JS.
>>1589273на практике рано или поздно встречаются много манипуляций с дом и какая-то логика , с JQ все в кашу превращается, лучше Vue взять
Как синхронно зафетчить?Что тут не так?async function getById(id) { event = await fetch(`URL`).then(res => res.json()); return event;}Эта асинхронная фнукция вызывается внутри синхронной, хочу свой объект, а получаю висящий промис.
>>1589245Кстати да, забыл добавить, мне это нужно для сайтика, так что не пойму почему jq плохо, ведь это тоже самое что и ванила, только код в разы короче>>1589270>Ванильный JSВ 2019 писали что я долбаёб из-за того что улетаю по ваниле и использовать jq, типа это проще, а теперь уже долбаёб из-за того что ушёл с ванилыЯ просто хотел сделать по минимализму, не хочу городить тонну кода с кучей условий чтобы результаты обрабатывались и выводились в нужной мне последовательности, а ебучие api возвращают результаты с ебучим рандомом
>>1589427ну если твой потолок карьеры это сайты визитки с окладом 30к в месяц - то проблем нет, JQ хорош.
Пиздец, полчаса ебался пытаясь присвоить новое значение константе. Консоль выдавала какую-то хуйню блять вместо указания на ошибку. Ебал я в рот эти константы нахуй, и дебилов которые тут пишут "вседа нада канстаты стоби харосий код"
>>1589482Ну да ведь константы виноваты в том что ты как долбоеб пихаешь их повсюду, а не только там где они нужны.
Посоны, объясните или подскажитеснова$.getJSON("demo.json", function( result ) { console.log( result );}).done(function() { alert( "success" );})Я думал то что в .done() выполнится только после полного выполнения кода в самом запросе getJSON, но он выполняется сразу же как сервер отдаст ответ, так какую переменную подставить вместо .done() или что дописать, чтобы алерт выполнился только после полного выполнения кода в самом запросе, в данном примере только после выполения консоль лога, .always() и .then() тоже пробовал, не помогло, код выполняется раньше, чем то что в самом getJSON
>>1589506Ты свой говнокод полностью показывай, долбоеб. Если брать твой пример, то всё выполняется последовательно.
>>1589507А так$.getJSON("demo.json", function( result ) {setTimeout(function(){ console.log( result );}, 3000);}).done(function() {alert( "success" );})
>>1589508Тоже самое, сначала у тебя запустится таймаут, потом result в консоле, и после этого начнётся блок done.
>>1589509Блин, ну попробуй туда дохуя консоль логов засунуть, или что-то что выполняется асинхронно, но не моментально, а с задержкой, тогда сперва исполнится алерт, а потом консоль лог, у меня там вместо консоль лога куча кода работающего с DOM, и вот пока этот код отрабатывает, алёрт уже выполняется, из-за чего происходит ошибка
>>1589512Так я тебе, долбоебу, еще вчера написал. Пиздуй на javascript.info и учи азы. Нет, ты продолжаешь душить своими тупыми вопросами и своим ненужным jquery.
>>1589508Если ты хочешь чтобы код в done выполнился после setTimeout, то JS так не работает. Иди читай по event loop и про то как работает setTimeout.А вообще это какой-то адский тупак делать асинхронную логику на коллебках, когда есть православный промисы и async/await.
>>1589527Мне нужно просто чтобы код 3 выполнился только после выполения кода 2, а тот чтобы выполнился только после кода 1, вот пример подробнее, setTimeout я просто хотел сделать задержку для примера, неудачный был пример$.getJSON("demo1.json", function( result1 ) { console.log( result1 );}).done(function() {$.getJSON("demo2.json", function( result2 ) { console.log( result2 );});}).done(function() {$.getJSON("demo3.json", function( result3 ) { console.log( result3 );});});Сейчас из-за разного времени ответа сервера или из-за количества кода, очерёдность вывода может быть рандомной, консоль лог здесь просто для примера, как правильно раставить код чтобы он выполнялся поочерёдно, но данные с серверов грузились одновременно, чтобы не создавать задержки, синхронное выполнение тоже не подойдёт, так как приостановит загрузку страницы
>>1589582>This jQuery XHR object, or "jqXHR," returned by $.getJSON() implements the Promise interface, giving it all the properties, methods, and behavior of a PromiseПочему мне за тебя нужно доку читать?https://jsfiddle.net/pozgqsba/
>>1589639Братик спасибо, но мне надо было на jqПосоны я уже решил эту задачу, результат показывать мне стыдно, но там в конце огромная куча скобок, вложил все действия друг в друга, зато работает как надо, спасибо jqмать твою ебал
>>1589641Анон, я просто не задрот в этой хуйне, мне большинство терминов просто ни о чём не говорит, больше понимаю на примерах и без использования новых стандартов экмаскрипт, когда я учился, констант и стрелочных функций ещё просто не былоно спасибо
>>1589647>без использования новых стандартов экмаскрипт, когда я учился, констант и стрелочных функций ещё просто не былонТак иди их изучи, дедуль. Стыдно в 2к20 промисы не знать.
В 2019 говорили что ванила для даунов, делай всё на jq, в 2020 говорят jq для даунов, делай всё на ванилеВ 2010 говорили что я школьник, в 2020 называют меня дедомБлять, время, сука, ты куда
>>1589660>В 2019 говорили что ванила для даунов, делай всё на jqВ 2009 ты хотел сказать? Так-то jQuery давно уже говноедская либа.
Посоветуйте Облачную Self Hosted IDE. Чтобы арендовать вдс, поставить настроить все, и потом в браузере с любого устройства по домену подключаться и логиниться. Неужели индустрия в 2020ом году еще не развилась до этой стадии. У нас тут игры скоро будут в браузерах запускать и стримить на клиент, а вы до сих пор кодите и засираете свою рабочую машину вместо того чтобы один раз создать удаленное рабочее окружение и не беспокоится ни о чем.
>>1589678В дополнении напоминаю:VSCode: электроноговно, отдельный браузер для одного приложения, интерпретируемая скриптопараша, умудряется ахуенно жрать ресурсы и тормозить как ебанутая на топовых железках при большом количестве файлов в проекте. Блокнот с плагинами вместо IDEWebStorm: получше но java. Jvm говно жрет так же, но уже скомпилированный байткод работает гораздо быстрее. Полноценное IDE. Плюс полноценный коммерческий продукт с нормальной тех поддержкой и всей этой хуйней.Visual Studio: С++, двоичный код просто летает на железке минуя уебищные абстракции в лице уебищной виртуальной машины. Ресурсов жрет поменьше одностраничного PWA-говноприложения. Коммерческий продукт причем не от каких-то левых пидорасов которые шкерятся в Чехии, а от софтверного гиганта индустрии, самой ебать ее в рот Microsoft. Из этого выходит недостаток что полностью анально вендерлокнута на продукты компании. Плюс вставляет телеметрию в бинарники.Так что выбирать то? Vim и Emacs не предлагать
>>1589694Это чуть ли не единственное решение на рынке, если хочешь из браузера работать. Я бы на твоем месте не поленился пофиксить.
>>1589699Хочу вкатиться в жабу, но с какого-то хуя от бэкендера требует знания html/css/javascript и еще react. Что за хуйня? Я на веб разработчика фронтовика устраиваться пришел что ли?
>>1589706Все прекрасно работает. Ты GPU-акселерацию что ли в настройках Хрома отключил, хакер мамкин?
>>1589703>требует знания html/css/javascript и еще react.Хрюши пишут все знакомые слова в вакансию скорее всего. Ну и на базовом уровне html/css/js учатся за пару дней
>>1589703Хз, я хоть я знаю это всё, на работе не понадобилось ни разу. Даже не спрашивали. Сервер пишут одни кодеры, клиент - другие.
>>1589704Зачем если у меня bf4 на ультрах в 60 кадров в мультиплеере? Зачем обновлять железо, если проблема в низкопроизводительном софте и нежелании софтверных гигантов с многомиллиардными бюджетами и лучшими профессионалами индустрии сделать нормальный рабочий продукт? Где WebAssembly блять? В 2013ОМ СУКА в огнелисе запускали демку UNREAL ENGINE 3 НАХУЙ, и она нормально работала и СПУСТЯ 7 ЕБАННЫХ ЛЕТ НИХУЯ НЕ ИЗМЕНИЛОСЬ. Что не так в этой индустрии?
>>1589716Один пример охуительнее другого. Какое отношение твоя видеокарта имеет к быстродействию IDE?
Ничего не понимаю...И это современные веб-разработчики... Говно какое-то, хипстеры. Блядь, Индустрия, им дала WebAssembly. Пиши, пиши код на крестах и запускай в браузере! Блядь, не хочу, хочу чтобы всю мою оперативку сожрало скриптовое js говно! Что такое? Это производительность? На топовом i7 это производительность?! Суки... Мудачьё...веб макаки! Стикеры на FagBook'и нацепили! Тормозное электроноговно, причмокивая, жрут!.. Фронтедеры, блядь, ёбаные...
>>1589738А почему тогда Notepad++ или Sublime Text на каком-нибудь ебанном i3 спокойно летают, а это электроноговно вовсю тормозит и жрет больше 100mb ram?
>>1589728Я к тому что схуяле спустя 7 лет веб до сих пор пишут на js, а не на том же каком-нибудь c# c blazor, и при этом современные страницы по внешнему виду нихуя не отличающееся от говна из 2014го сейчас жрут больше и тормозят сильнее?
>>1589747Потому что хтмл + ксс + жс поддерживают респонсив из коробки, а для с++ придется городить велосипеды.
>>1589758Так мне полноценная среда для веб разработки на крестах нужна. Неужели ничего качественного нет?
>>1589747> им дала WebAssemblyНет, пока что не дала, нет доступа к DOM. Можно дёргать дом через JS, но тормозить это будет как JS.
>>1589790Что-то маргинальное, никогда не слышал и не видел чтобы кто-то в них работал. Наверняка проблемы начнутся уже на этапе поиска плагина для преттиера или TS.
>>1589797Нет, это когда ты компилируешь исходник на плюсах или расте в специального вида бинарник и скармливаешь его виртуальной машине в браузере, а машину запускаешь через жс.
Анон, такой вопрос.Вот есть у меня например фронт на реакте. Если я сделаю ГЕТ запрос на сервер, то я получу ответ. И если я сделаю ПОСТ запрос, я тоже получу ответ. Так вот если я прописал эти запросы руками где то в реакт аппе, то когда нужно делать ГЕТ запрос, а когда ПОСТ? Ведь результат тот же. Есть ли вообще смысл делать разные запросы? То есть например мне надо получить дату с бд. Я делаю пост запрос и жду пока прийдет ответ, тогда рендерю это всё. Можно ли здесь (и всех подобных случаях) делать только пост запросы? Почему?
>>1589954А если я бэк пишу? Когда мне писать ответы для пост запросов, а когда для гет? Ну ты понял, все упирается в вопрос когда что юзать.
>>1589965Пасиба ебатьЯ им задал конкретный вопрос, а меня и дальше гуглить посылают. Как будто я этого не делал. В час смысл вообще тогда у кого то что то спрашивать, если все равно пошлют гуглить?
>>1589747А нахуя? Ты числа дробить в браузере собрался?Так-то фронтенд состоит из кучи fetch и обновления DOM.
>>1585798>Что то я тупой, или где в js аналоги pause или waitВо из-за таких вкатывальщиков меню варкрафта и тормозит
>>1590008Ну вот все и было хорошо пока веб использовался для того для чего и предназначался, для обмена html страницами. А потом эти долбаебы решили что давайте замутим полноценные веб-приложеия, spa, pwa, huiwa, и все пошло по пизде. Все веб-программисты понимают что GovnoScript это ужаснейшая ошибка истории и трагедия всей индустрии, также думает его создатель. Но отказываться от него пока никто в наебизнесе не планирует. Да и кодерам похуй на индустрию в целом, они здесь за баблом а не идеей. Пока деньги платят, готовы делать любое говно в кратчайшие сроки, и похуй что у большинства пользователя на хороших машинах лагает, ПУСКАЙ ОБНОВЯТСЯ. Поддерживая все это мракобесие вы полностью заслуживаете такую дерьмовую реальность. Продавайте дальше свою жопу за деньги в попытках гнаться за фантомным успехом.
>>1590030> Ну вот все и было хорошо пока веб использовался для того для чего и предназначался, для обмена html страницами. А потом эти долбаебы решили что давайте замутим полноценные веб-приложеия, spa, pwa, huiwa, и все пошло по пизде.> Все веб-программисты понимают что GovnoScript это ужаснейшая ошибка истории и трагедия всей индустрии, также думает его создатель. Но отказываться от него пока никто в наебизнесе не планирует. Да и кодерам похуй на индустрию в целом, они здесь за баблом а не идеей. Пока деньги платят, готовы делать любое говно в кратчайшие сроки, и похуй что у большинства пользователя на хороших машинах лагает, ПУСКАЙ ОБНОВЯТСЯ.> Поддерживая все это мракобесие вы полностью заслуживаете такую дерьмовую реальность. Продавайте дальше свою жопу за деньги в попытках гнаться за фантомным успехом.
>>1590009Сразу видно, что чтобы взяли кодером в близзард, достаточно знать JS на уровне "а что, джава и джава скрипт это разные языки?"
>>1590030Идея о том, что всё лагает, потому что всем похуй, не нова, см. bloatware. И до JS эти разговоры были, и после него будут.
>>1590037 >Потрачу силы чтобы пукнуть гринтекстом и прикреплю картинку с дегенератом ведь мне нечего ответить
>>1589979Есть смысл спрашивать о чем-то нестандартном. Если на твой вопрос есть миллион ответов в гугле, то спрашивать на дваче\форуме\ирл и правда бессмысленно
>>1590145Во, у меня есть нестандартный вопрос. Пришли мне значит несколько задач с одной из вакансий и для правильного ответа надо бы знать jquery, который я не знаю и о котором ни слова в вакансии не было.Внимание вопрос - подразумевается, что я погуглю, разберусь и отвечу правильно или всё, я слился? Задачи обязательны.
Аноны, у меня вопрос: Я написал бэк на ноде, ORM сиквелайз.Как реализовано - подключение к базе находится в модулеorm_model.js, из этого модуля я экспортирую модели таблиц tables.Я правильно понимаю - при старте сервера выполняется модуль orm_model.js, создаются требуемые объекты таблиц, и они грубо говоря "зависают" в области видимости. И каждый раз когда из разных контроллеров (в которые импортирована эта модель таблицы) - я обращаюсь к одному и тому же объекту таблицы?
>>1590152>для правильного ответа надо бы знать jqueryТы уверен? это же просто обертки над стандартным функционалом, ты все можешь на чистом жсе сделать. >погуглю, разберусь и отвечу правильно или всё, я слился?Ну и конечно погугли, jquery отчасти потому и хейтят, что в него вкатиться может любой даун
>>1590235Оч странно, я в своё время его не осилил, предпочитал всё делать на ванилле. А затем он сдох, ура.мимо
>>1590235> Ты уверен?Да. Там надо сказать, что сделает уже написанный скрипт на jquery. Просто если допустить, что мне на собеседовании дадут задания с жквери, то я скорее всего не отвечу, без хорошего знания синтаксиса жквери.Не то что бы остальные вопросы я щелкал как орешки - там такие нюансы, с которыми я не сталкивался или сталкивался и не считал нужным запоминать.Так что лучше действительно перед поиском работы зажрочить типовые вопросы.
>>1590119> >Потрачу силы чтобы пукнуть гринтекстом и прикреплю картинку с дегенератом ведь мне нечего ответить
>>1590427>https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Class_fields>Private instance fields are declared with # names (pronounced "hash names"), which are identifiers prefixed with #. The # is a part of the name itself. It is used for declaration and accessing as well.Что еще спизданешь?
>>1590457Так может сам статью прочитаешь, которую кинул? там наверху четко написано >his page describes experimental features.>Both Public and private field declarations are an experimental feature (stage 3) proposed at TC39, the JavaScript standards committee.
Никак не могу решить эту простенькую задачу:Напишите программу, которая запрашивает у пользователя число, пока оно не станет меньше или равно 100.Когда это будет сделано, улучшите его так, чтобы число составляло от 50 до 100Пробовал через цикл вайл, но не знаю как выводить промт снова когда он уже объявлен в переменной
>>1590494Ну типо иф(больше сотки) {пусть ещё вводит через промпт} элс { иф(число меньше пятидесяти ) {отними его от сотки и верни} элс{ретурн} }
>>1590488Но ведь ты кукарекал про то что это есть только в ТС, а теперь у тебя оказывается это есть, но только в виде экспериментальной функции.
>>1590532В том сообщении подразумевалось, что объявить переменную ты осилишь. Видимо, тебя переоценили.
>>1590569Ну смотри:let i;while (i >= 100) {i = +prompt ();}Переменная объявлена, но все равно не работает
>>1590581Говорят, если не писать, можно в какой то момент отупеть настолько, что не сможешь в нормальные языки.
>>1590587>пока оно не станет меньше или равно 100.>while (i >= 100)В голос с дегенерата. Такой даже в макдональдс вкатиться не сможет.
Все, сделал кароч, просто я пытался чтобы при не работе условия возвращалось что в условиях вайлаhttps://codepen.io/elnar1995/pen/VwYoEzO?editors=0012
>>1590587Держи свой код, но тебе с таким уровнем интеллекта точно следует подумать о выборе другой профессииlet i;do {i = prompt();}while (i >= 100)
Сделал кароч, просто никто из вас не додумался показать как объявлять переменную с промт. Ну и я ещё вбил себе в голову что надо возвращаться к значению переменной с промт объявленной в первый раз а не создавать новоеlet number = prompt(); while (number > 100 || number < 50) { number = prompt("Число слишком большое или маленькое"); }
>>1590687Не прошло и пол года.Алсо, ты в глаза ебешься:>никто из вас не додумался показать как объявлять переменную с промт>>1590600>let i = prompt ();
Сука так вот откуда берутся все фронтендеры которе не знают отличией конста от лета, с двача ебать его в сраку.
>>1590687Можно же еще так:let number = 101;while (number > 100 ) {number = prompt();}Короче получается.
>>1590733Конст же вообще не нужен, если никто не будет переопределять мои переменные. А с чего бы их переопределять. А вот отличие между вар и лет...
А какие задачи чаще всего решаются в продакшане на Реакте?Какой функционал чаще всего реализовывают?Работающие аноны, расскажите плиз, что чаще всего делаете.
>>1590736всмысле не нужен, const в 99% используется в коде, а let очень редко var используется только в блядо-черве-пидорских-проектах 2000 годов))
>>1590517ты ебнулся? твои слова: >На жс уже давно ввели приватные поля классов.Нет, не ввели. Экспериментальные функции != введенные. Точно так же еще не ввели в стандарт a?.b?.c?, оператор ??, и т.д.
>>1590752> всмысле не нужен, const в 99% используется в коде, а let очень редкоНу а если конст заменить на лет абсолютно во всех случаях - что-то сломается? Допустим одинаковых наименований нет.
>>1590758нет,пофиг, но тут семантика если я вижу переменную let speed =1000я тчоно понимаю что где-то ниже она меняется.а если вижу const , то я спокоен.есть конечно петухи которые исопльзуют const speed =[]и делаю speed.push(1) , но это выблядки пиздец.
>>1590754Их ввели, но тестируют. Не введённые это те, которые ты не можешь использовать. Приватные поля ты прямо сейчас можешь использовать в хроме, например.
>>1590765>есть конечно петухи которые исопльзуют const speed =[] и делаю speed.push(1)Так и надо делать.
>>1590784 эти типа передать ссылку в аргумент функции? Допустим есть функция а я передаю туда Math аргументом, типа инъекцировал зависимость.
>>1590797Пруфы чего? Того, что если массив постоянно используется, то желательно, чтобы этот массив всегда оставался массивом, а не равнялся null или текстовой переменной? Если тебе нужны пруфы этого, то пришло время для тебя пройти учебный материал сайта javascript.info
>>1590836Ну и? const не даст присвоить переменной не нужное значение, мутации это не про способы объявления. Если тебе нужен иммутабельный объект, то для тебя создали Object.freeze.
Товарищи, подскажите, пожалуйста. Есть 4 картинки, нужно по клику на стрелку выбрать следующую после "selected-image" картинку. То есть у меня как бы в массиве есть 4 картинки. Как средствами jQuery получить следующую после "selected-image"? На пикриле результатом должно быть $('.t')[2]
>>1590898Потому что ты мне запрещаешь? Пишу приложение используя Electron, использую приватные и публичные поля. Проблемы?
>>1590899Но в таком случае будет images.findIndex is not a function, у меня же const images = $('.t')
>>1590858>JQ>$('.t')[2]как хорошо что я сделал выкатку из JQ 5 лет назад.пиздец там говнокодеры я ебу.
>>1591009Ты прав, все так.Но ты экономишь на спичкахоправдано лишь при 1000000+ элементахвстречал ли ты на фронте такие массивы?
Надо решить задачу разными способами - часть элементов массива в нем объекты с парой свойств удалить, часть изменить.Первое решение - перебрал циклом фор оф массив и сделал всё, что надо, сформировал новый массив, вернул, всё как надо получилось.Теперь нужно отличное от прошлого решение - как думаете, если я через forEach сделаю, это уже будет другое решение? По сути внутри форича будут конструкции, как в первом решении. Чего-то принципиально отличающегося мне в голову пока не приходит.
>>1591019Наверное через мап сделаю - выглядит как то, что я с форич собирался делать, только некоторые вещи за меня сделает.
>>1591016Качественные оптимизации я считаю оправданными. Если так хочешь иммутабельность, то есть immutablejs.
>>1590766Если полная запись выглядит так> a && a.b && a.b.c, не логичнее ли использовать амперсанд и для сокращенной?> a&.b&.c
ПЕРЕКАТ https://2ch.hk/pr/res/1591066.htmlПЕРЕКАТ https://2ch.hk/pr/res/1591066.htmlПЕРЕКАТ https://2ch.hk/pr/res/1591066.html
>>1591038Для чего мне библиотека?Наипши кейс где тебя спасет push вместо создания нового массива?кейс это данные из 100 000 строк. такое существут в фронте?нет.все равно идет либо виртуализация, либо пагинация всегда
>>1591005Ты точоно понимаешь что такое внедрение зависимости, и соответственно инверсия управления?Я не доебаться ради.
>>1591250ну конечно, если говорить грубо, то передача ссылки на сущность, которую можно использовать в классе, функции как зависимость.такая хуйня была даже в JQ через самовызывающиеся фуцнкциитакое есть в TS , но это в виде костыля реализовано.