Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если/когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Здарова работяги. Такой вопрос: есть ли какой-нибудь словарь терминологий с иллюстрациями (на английском офк), который описывает разные визуальные эффекты на страницах? Например hover, slider - это понятно и это много где есть. Но например я не так давно случайно столкнулся с термином parallax и я до этого понятия не имел что это так называется, хотя сам такой эффект на сайтах мне частенько попадался. Есть какой-нибудь словарь, который описывает такие эффекты, чтоб можно было какие-то вещи по нему ьыстро загуглить?
А как в spa реализовать к примеру обработку Get-запросов по типу личный кабинет/вход/регистрация/страница юзера. То есть, как сделать так, чтобы при переходе через поисковую строку браузера на http://domain.com/user:12345678 загружалась именно то, что от просят от домена, а не тупо редиректилось на http://domain.com? React, btw
Как ts учить? Если ты нубок? Я доку читал, там в ts много ништяков есть и так можно и сяк можно, но когда ты нубок, то ты даже не понимаешь, а зачем эти ништячки нужны. А самое главное А КАК МНЕ ПИСАТЬ КОД ТО БЛЯТБ, КАКОЙ ИЗ 100500 НИШТЯЧКОВ НАДО ПРИМЕНЯТЬ?
>>2415643 >spa >обработку Get-запросов SPA не занимается обработкой GET запросов. Этим занимается сервер. Тебе надо сделать, что бы на любой запрос тебе всегда отдавалось твое реакт приложение в конфигах севрера и в самом SPA уже настраивать роутер
elem.textContent = 'text' перезаписывает layout рендер фазы браузера, следом изменяются этапы отрисовки и композиции. Вопрос: перезаписывание идёт всего dom дерева или ток элемента elem?
Есть два поля ввода и пустой список под ними. Нужно сделать так, чтобы введённая в поля информация вставлялась внутрь этого списка. После сабмита поля должны очиститься для следующего ввода.
Вот код целиком:
const form = document.querySelector('form'); const list = document.querySelector('#list');
form.addEventListener('submit', (evt) => { evt.preventDefault(); let qty = document.querySelector('#qty').value; let product = document.querySelector('#product').value; let newLi = document.createElement('li'); newLi.innerText = `${qty} ${product}`; list.append(newLi); qty = ''; product = '';
});
У меня всё работает, кроме очищения полей. Я имею в иду, что именно так поля не очищаются: >qty = ''; >product = '';
Чтобы они очистились, пришлось изменить код и сделать вот так: >document.querySelector('#qty').value = ''; >document.querySelector('#product').value = '';
Почему, чтобы очищение сработало, приходится указывать value напрямую через селектор, а не, как в первом варианте, просто через переменную, в которую этот value уже записан?
Пишу уже второй пет проект на реакт и тайпскрипт и не пойму используется ли вообще ts по серьезному в проектах или нет. Прописать типы/интерфейсы? Есть такое. Типизировать какие-то внутренние реактовские/редаксовые штуки? Есть такое. Но что-то сложнее и изъебистее вообще встречается? Я как-то натыкался на вот это https://github.com/type-challenges/type-challenges и просто охуел. Такое часто встречается в работе?
Простите, если не в тот тред. На облачном сервере лежит клиент на 8080 порту, арендовал доменное имя и прикрутил к нему ip сервера. По итогу получаю такую хуйню: example.ru:8080. Вопрос, как этот пиздец привести к нормальному виду, чтобы при переходе на example.ru выдавалась страница по XX.XX.XXX.XXX:8080 ?
>>2416235 Или как можно сделать так, что бы процесса на порте вообще не было, а серв раздавал один единственный статический бандл файл на запрос example.ru?
>>2416138 >{id: id} Как там в 2009? >>2416235 Использовать дефолтный порт для http(s) в виде 80(443) или поставить нжинкс или апач в режиме обратного прокси с этих портов на 8080
>>2416030 >а не, как в первом варианте, просто через переменную Потому что у тебя в переменной строка находится, не ссылка на элемент, не сам элемент а копия его значения на момент создания. >>2416126 [1,2,3].map(id=>({id}))
Смотрел кто пик? Там 50+ часов тайминга, не хотелось бы бездарно проебать время. Глянул несколько рандомных видео чисто для ознакомления с подачей материала, вроде нормально, но очень много воды, повторений и разжёвывания очевидных вещей. Если кто смотрел, то дайте рецензию хотя бы парой слов, хуйня или можно посмотреть А то основы жыэса вроде уже усвоил, хотелось бы с фреймворками познакомиться
>>2416326 >дайте рецензию хотя бы парой слов >очень много воды, повторений и разжёвывания очевидных вещей Данный курс не рекомендуется, ибо его автор ну ооооочень много пиздит, даже на х2 это невозможно смотреть. Ты потратишь 150 часов там, где можно управиться за 30.
>>2416373 Во первых, выкидывай аксиос, он тебе не нужен и не пригодится. Во вторых, используй предназначенные для асинхронщины стейт-менеджеры. В третьих, ты можешь навестить на xhr.js и понять, что вызывает метод.
>Метод forEach() выполняет указанную функцию один раз для каждого элемента в массиве.
Что происходит во втором кейсе? Это же, по сути, то же самое, мы просто передаем готовую функцию, вместо того, чтобы непосредственно ее описывать в скобках.
>>2416421 >Метод forEach() выполняет указанную функцию один раз для каждого элемента в массиве. Какие же вкатуны тупые, не в состоянии пролистать MDN чуть ниже, сразу бегут на мейлач помощи просить. Pathetic.
>>2416454 >какие же языки со сборщиком мусора всратые и непрозрачные То ли дело раст, который оказался настолько полезным, что байтодебила пришлось переучивать на нодежс или просто ты не осилил раст и тебе предложили перекатитсяили уволить нахуй
Так, пацаны и пацанессы, нужен ваш авторитетный совет. Сам жс/тс макака мидл, был небольшой опыт приложухи на RN. Хотел понемногу перекатываться в RN/Flutter, потому что кросмобильная разработка понравилась. Но сейчас в условиях санкций не сосну ли я с этим направлением? Актуальная ли будет мобильная разработка сейчас и например через пару лет? Многим крупным компаниям отрубили приложения, и насколько я знаю, остальным их монетизировать нельзя. Что с этим делать и как дальше быть? Понимаю, что скорее всего фронт умрёт в последнюю очередь, потому что наиболее доступной для пользователя среды, чем браузер нет, но вот с уклоном в мобилку - буду ли я хуй?
А вообще в последнее время в ебейшей депрессии нахожусь, только недавно начал нормально зарабатывать, как-то вылезать из нищеты, помогать родителям, только благодаря it смог вылезти из этого ада с родительскими кредитами и нехваткой денег и тут блядь я не знаю опять чего ожидать в будущем, и что я буду делать, если повсеместно начнутся сокращения.
>>2416511 Просто год для компании выдался неудачный. Мы уже давно собирались расширяться в ноду, даже наем начали, но внезапно дела ухудшились, наем жсеров прекратили, сейчас доделываем что есть, меняем юрлицо и перезаключаем контракты. Раста больше не будет, расширения не будет, или пишем на ноде, или на мороз.
>>2416564 > библиотека для создания/удаления элементов в DOM ректальный даун спок.
я понимаю что ты настолько говна обожрался что уже теряешь когнитивные способности, но если у тебя хотя бы как у тян осталась одна извилина - попробуй погуглить что такое препроцессоры.
>>2416565 я знаю что такое препроцессор, объясни как связан препроцессор и либа для вставки/дуаления элементов из DOM. еще погугли как жсон читать не блокируя основной тред, тупица :3
Бля, как же я проигрываю со всего этого цирка с ESM. Заебенил хэлловорлд на экспрессе с тайпскриптом (то есть чистая нода без всяких смешений с браузерным окружением), и посыпались костыли с резолвами путей. Заебенил кодген и проект теперь требует билда для его запуска и обновления, но при этом не сбилдится при кривом кодгене. Хотя хотел сделать всё просто и понятно, чтобы скриптами из package.json. Кажется я начинаю понимать, откуда берутся проекты с вырвиглазным пайплайном.
>>2415542 (OP) Аноны, что означает динамические данные? Можно примеры?
Изучаю SSG для некст джса. Но вот этот момент меня в ступор вводит.
И ещё, если можно спросить спрошу. То есть на SSG сайты нельзя прикруть бекенд нормальный? Джанго там или ещё какой-нибудь асп.нет? так как >Безопасность. У вашего статического сайта нет сервера, а значит у злоумышленников нет возможности получить доступ к вашей базе данных или панели администратора.
То есть только через Headless CMS админку можно добавить?
>>2416720 На сервере генерируется цельная веб страница и отправляется на клиент, как картинка. При таком подходе у тебя нет возможности частично менять содержимое страницы с клиента, каждый раз на сервере должна генерироваться новая.
>>2416731 Как пример изменения страницы это загрузка картинок с клиентской части? или комментарии? То есть просто для таких вещей использовать SSR вместо SSG? соре если не вдуплил, я не самый умный в классе
Как я вообще понял в next.js сразу 3 способа можно одновременно использовать рендера CSR, SSR, SSG, просто в зависимости от задач использовать нужный рендер/пре-рендер.
Насколько по говноедски сделать апдейт (PATCH) таким образом, что сначала мы удаляем из бд все текущие элементы, а потом добавляем новые (даже если новые совпадают с текущими)?
>>2416749 SSR рисуется на нодовском проприетарном сервере, а SSG - типичное реакто-SPA со встроенным роутингом. Соответственно "выбор" твой сперва зависит от того, согласен ли существующий бэк на установку промежуточного нодовского сервера. Иначе это будет просто более удобное SPA с в 3 раза меньшим количеством зависимостей, чем условный CRA.
Как называть переменную в которой хранится объект - отношение idшников? например объект {bookId: 123, authorId: 434}. const bookToAuthor const bookAuthor const book_author или как?
>>2416761 >>2416790 >а SSG - типичное реакто-SPA со встроенным роутингом.
Почему чутка, потому что я читал, что SSG это не типичное SPA, потому что в типичном спа там CSR из-за чего прогрузка страницы дольше и сео хуже работает
>>2416759 Зависит от размера самой БД и алгоритма проверки на совпадение. Можно заговнокодить ебанутый цикл, который будет сравнивать все элементы друг с другом и жутко тормозить этим систему. Так что если база небольшая, то смело можешь ставить полную замену
>>2416792 В SSG ограниченный ресурс для сео. Условный сайт со страницами товаров и поддержкой многоязычности будет рендерить количество товаров * количество языков страниц при каждом билде (и это только для одного пути). В нексте можно и частичный статичный рендер организовать как раз для таких случаев, но он опять таки только для проприетарных нодовских серверов.
Допустим с бэка получаем объект для страницы и там есть каунтер, в котором хранится число, пусть 5
На странице есть кнопка подписаться которая увеличит этот каунтер до 6 и получается надо это отослать на бекенд. (Больше чем 1 раз подписаться нельзя)
На текущей странице как отрисовать эту 6ку - сделать новый запрос на бек? А если там дофига полей Вручную на фронте добавить +1 через useState какой-нибудь, но как-то костыльно как будто? Попросить бэк сделать отдельный ендпоинт для этого каунтера?
>>2415542 (OP) Здравствуйте. React JS У меня есть модальное окно, хочу чтобы на клик вне модального окна оно закрывалось. Нормально ли использовать глобальный ивент на весь документ в таком случае? document.addEventListener("click",...)
>>2417693 > Почему ты меня оскорбляешь? потому что ректодауны привыкли страдать и жрать дерьмо, а потому не достойны уважения
> Как ты на чистом цсс модальное окно откроешь? гугли уебище ленивое
совсем там ебанулись со своей ублюдской либой для говнодела, сука тупорылые профнепригодные ничтожества лезут нахуй куда то, не зная ЭЛЕМЕНТАРНОЙ БАЗЫ блядь, сука позороще...
иди блядь еще свою всратую штемельку без разметки внутри стринга попиши уебок ебанный.....
>>2417689 >У меня есть модальное окно, хочу чтобы на клик вне модального окна оно закрывалось. Создаешь бэкдроп и навешиваешь на него обработчик клика.
>>2417777 > квадрипл обосрался с линком > (т.е он скорее всего как последняя тупая пизда копирует и вставляет цитату) > лезет чето кому то пояснять чет ор
>>2417791 >не могущий в ссылки Могущий, только помимо ссылок еще и могущий в доступность и семантику. А вот ты, судя по твоим высерами, ни в одно из вышеперечисленного так и не научился. И еще пытаешься выехать за счет принижения убогих трейни питонодибелов.
Привет ананасы. Надеюсь на вашу помощь. Подскажите как сделать вот такой вырез с бордерами с радиусом (внутренний и внешний). Крутил вертел псевдоселекторы с белым фоном, максимум смог сделать два внешних бондера. Кто знает, как такое делается? Я думаю, обычными html и css это невозможно сделать.
>>2417825 Думаю, можно и так, но как нарисовать такую свгшку? Вот мне, допустим надо все углы сделать одинаковыми. Есть какие-то тулзы для этого? В Фотошопе/гимпе я не нашёл инструмента что бы сделать. Только от руки вырезать и т.д. Я думал, может кто-то из анонов делал такие вещи и сможет подсказать. >>2417821 Двумя псевдоэлементами пытался сделать, но тогда внутренний угол не поменять, только 90%. А маски сейчас посмотрел в clippy, там закругления не сделать.
>>2417827 В фотошопе/гимпе точно нет, это же редакторы растровой графики. Krita вроде умеет в SVG, но честно говоря я неебу в чем это делают, я ж жаваскриптер а не рисовальщик.
>>2417827 >Двумя псевдоэлементами пытался сделать, но тогда внутренний угол не поменять, только 90% Ну смотри, у основого элемента стоят скругленные бордеры везде, кроме правого нижнего угла. В правую часть суешь зеленый псевдоэлемент-прямоугольник со скруглениями на правой стороне. А сверху херачишь еще один псевдоэлемент-квадрат со скруглениями, но только белый, и делаешь так, чтобы он перекрывал основной элемент. Но в любом случае это говнокостыль с кучей подводных камней, так что лучше так не делать. Лучше посмотри свойство mask-image
>>2417836 >>2417827 >но тогда внутренний угол не поменять, только 90% Бля, ты прав. Сейчас попробовал накидать демку, один угол действительно всегда остается незакругленным. В любом случае можно к двум псевдоэлементам добавить один настоящий))
>>2417855 Сейчас попробую сделать картинку для маски, которая будет закрывать уголок, если не получится, то элементами выстраивать. Я надеялся, что есть уже какое-то простое решение, видимо нет. Ну похуй.
https://youtu.be/xUI5Tsl2JpY Учусь по этим видосам. Помогите понять, на forEach на 39:10 чел использует person и index. При этом let указан array со списком людей. Но index и people отдельно не указаны. Как тогда функция понимает, что ${index} это индекс, а ${people} это человек в вышеуказанном array?
Сорри, если не так спросил. Как у функции получается понять, что index аргумент это имеется в виду индекс(то есть исчисление с нуля) , а person аргумент это имеется в виду имена челиков из array(марио, хуярио и т.д.).
>>2417914 Потому что так устроен foreach. Он принимает функцию, которую вызывает после каждого прохода по массиву, и передает первым аргументом элемент массива а вторым его индекс. Просто погугли пример реализации, в ней ничего сложного нет.
>>2417952 >Headless CMS >гос шарага Не котируется, не допущен к защите. В гос. предприятиях используется только киберзащищенные CMS, например, битрикс.
Ну что это за ебаная шиза? Что это, блять? Как же мне мозг выносит этот ебанутый стиль, кто его придумал? Почему в js'е постоянно нужно в качестве аргументов функций вставлять свои лямда функции блять. Максимально шизово написанные хуйни, один метод выдает ретурн в аргумент моей функции блять чтобы потом выдать его в аргумент другой функции. Пиздец.
А главное как мне сохранить результат то, а не в консоль ебаную выводить? Он же внутри своего говна ретурнит а не на внешний слой. Пиздец вынос мозга.
>>2418011 Я в js не вкатываюсь по крайней мере пока, я просто хочу дваческрипт для личного пользования запилить, на js'e никогда особо не писал. >стрелочные функции от обычных отличаются. Лол, они разве чем-то отличаются? Я думал как и везде это просто лямбда функция на лету создающаяся, сахар своеобразный. >>2418013 Ладно, попробую понять асинхронность. А вы случаем не знаете лучше способ просто получить json с реквеста? Желательно без сторонних библиотек конечно (хотя мне уже кажется что без них придется какой-то велосипед городить).
>>2418026 Блять, реально работает. Причём я точно такой же запрос из инета нагуглил, но он у меня не заработал наверное потому что в этот момент было окошко alert'а высвечено, пиздец! Благодарю.
>>2418033 >А зачем второй эвейт? Просто он учебник на главе async/await дочитал только до половины >>2418019 > А вы случаем не знаете лучше способ просто получить json с реквеста? const resp = await fetch(url); if (!resp.ok) throw new Error("макаба расшатана нахуй"); const json = await resp.json(); console.log(json);
>>2418041 >Просто он учебник на главе async/await дочитал только до половины Ну давай, покажи мне ванлайнер для получения json через fetch без второго await.
>>2418179 Все стандартные математические операции с обычными числами будут накапливать ошибки округления. Чтобы этого избегать, нужно городить вагон костылей. Такой себе экспириенс.
>>2418190 >Все стандартный математические операции с bigint работают, и никакой ошибки округления там нет, так как это целые числа. Ебан, я тебе сказал про обычные числа, которые все флоаты в жсе. Ещё бы блять бигинт не мог складывать свои целочисленные значения.
>>2418156 Первый когда ты из неизвестного инпута хочешь получить произвольный, но валидный number. Второй когда ты хочешь точно указать как именно парсить строку в инт, например, для получения индекса. Чаще такая необходимость возникает в тс.
>>2418265 Типа. 1. Каждые 0.5 сек забираю айди последнего поста и количество уникальных постов на тот момент. Сразу проверяю изменилось ли число уникальных постов с прошлого раза, если изменилось, то добавляю в массив "необходимо подсветить" 2. Каждые 2 секунды я прохожусь по всему массиву. Проверяю прогружен ли пост с таким айдишником из массива, если прогружен то вынимаю айдишник из массива и подсвечиваю его.
>>2418273 >Каждые 0.5 сек забираю айди последнего поста и количество уникальных постов на тот момент. Пиздец у тебя логика. А проверить, что посты вообще появились мозгов не хватило? >Каждые 2 секунды Зачем? Мозгов не хватило проходится только когда он меняется?
>>2418285 >А проверить, что посты вообще появились мозгов не хватило? Как ты мне предлагаешь это проверить? >проходится только когда он меняется? Кто меняется, что ты несёшь, шизик?
>>2418286 >Как ты мне предлагаешь это проверить? А, я понял. Ну я это и делаю в unique_checker. Изначально просто структура другая была и я так оставил. Всё равно пикрил не занимает процессорного времени нихуя почти.
>>2418273 >Алсо, рейт мой первый скрипт на жсе >unhighlighted_ids не очищается при переходах по разным страницам >retrive_current_json_url наговнокодил то что делается в одну строку. document.baseURI.replace('.html', '.json') >[...unhighlighted_ids] нахуя короче говнокод тот еще >>2418286 >Как ты мне предлагаешь это проверить? да блять как угодно нахуй, хоть через свой класс XMLHttpRequest или fetch перехватывать запросы/ответы, хоть через MutationObserver. Дохуя способов. >Кто меняется, что ты несёшь, шизик? тупой 90iq вкатун, зачем ты каждые 2 секунды грузишь процессор когда можно грузить его только когда unhighlighted_ids меняется?
>>2418292 >только когда unhighlighted_ids меняется? Нахуя, говно? Ты предлагаешь грузить процессор каждые 0.5 секунд на бесполезные действия? За 0.5 секунд у меня не успеют посты прогрузиться блять. Я на то и ставлю 2 секунды чтобы за это время дать части постов появиться на моём экране чтобы он смог их селекнуть и изменить. Иначе придется просто так проходить по постам которые еще не загружены. >не очищается при переходах по разным страницам При каждой странице он нулевый будет, он же вновь загружается. >наговнокодил то что делается в одну строку. document.baseURI.replace('.html', '.json') Засчитано. >[...unhighlighted_ids] Нельзя в теле цикла использовать массив а потом его и изменять, необходимо сделать копию. По крайней мере на другом языке было так. >XMLHttpRequest или fetch перехватывать запросы/ответы Я понятия не имею как это должно выглядить, можно как-то заставить чтобы мне скрипт сам сообщал когда что-то обновиться? Первый раз об этой хуйне слышу. Можешь подробнее раскрыть, пожалуйста?
>>2418297 >каждые 0.5 секунд Ладно, он не каждые 0.5 секунд. Я понял претензию, типо нужно поставить какой-то триггер чтобы вызывался код когда массив меняется, логично. Ладно, я даун, засчитано. Я просто хз как это сделать, надо будет нагуглить.
>>2418297 > Ты предлагаешь грузить процессор каждые 0.5 секунд Какой же ты тупой. >За 0.5 секунд у меня не успеют посты прогрузиться блять. Иди читай учебник про async/await уебище >Иначе придется просто так проходить по постам которые еще не загружены иди читай учебник про MutationObserver уебище >Нельзя в теле цикла использовать массив а потом его и изменять, необходимо сделать копию. По крайней мере на другом языке было так. Так ты меняешь старый массив, тупица.
>>2418297 >Можешь подробнее раскрыть, пожалуйста? const obs = new MutationObserver(console.log); obs.observe(document.getElementById("posts-form"), {childList: true, subtree: true}) И попробуй обновить тред что бы новые посты появились. Дальше сам разберешься
>>2418300 Ок, попробую сделать так чтобы он сам обновлял тред через этого вашего мутанта сразу как новый пост постится и если этот самый новый пост прогруженный изменит число уникальных айпишников, то подсвечиваю его. >Так ты меняешь старый массив, тупица. Я менял бы тот же самый массив. Я же unhighlighted_ids.shift() потом делаю. Не понял, в js как-то по другому?
Анон, прости меня пожалуйста за глупость, но я правда не понимаю как можно обойтись без периодических запросов к json'у треда для определения новых постов. Вот MutationObserver к примеру: >The MutationObserver interface provides the ability to watch for changes being made to the DOM tree. Он мне поможет лишь избавиться от излишних проверок на загруженность поста в страницу. Но для определения какие посты были новые в треде придётся постоянно делать запрос на страницу и смотреть, изменилось ли число постов. Желательно как можно часто, чтобы за промежуток между запросами прилетело не более одного поста, иначе будет погрешность в определении нового постера.
Я не понимаю полностью претензии к этому моменту, как бы ты сделал, Анон?
>>2418304 >Я же unhighlighted_ids.shift() потом делаю Бля, чел, у тебя unhighlighted_ids определяется на второй строке и является константой. Включи мозг. Ты его не переопределяешь, ыт создаешь новый массив из старого, берешь его длину и он удаляется нахуй, потому что больше ни для чего не нужен. >>2418322 Когда MutationObserver определил, что на странице появились новые посты - делаешь еще api запрос, после которого отрисовываешь нужную тебе инфу.
>>2418326 >ыт создаешь новый массив из старого, берешь его длину и он удаляется нахуй Ааа, блять. Точно. А я думал почему он не ругается что у меня константный массив, так и оставил. Думал это фича, что всю переменную переопределить нельзя, а части массива к примеру можно. >определил, что на странице появились новые посты Разве для этого мне не нужно обновить саму страницу чтобы он заметил изменения в DOM'e? Неужели можно сделать так чтобы он сам обновлял страницу, как только новые посты фактически появятся? Попробую почитать побольше как еду себе уже наконец приготовлю.
>>2418336 Так это совершенно неприемлемо. За 20 секунд может навалить 10 постов к примеру. И через 20 секунд я делаю запрос, а число уникальных постов изменилось с 31 до 33 к примеру. И как я определю какие посты уникальные? Поэтому я и делаю запросы каждые 0.5 секунд.
>>2418348 Наконец то мой говнокод получил признание, вздыхаю с облегчением. Тогда прикручу мутации просто чтобы не дергать unhighlighted_ids лишний раз.
как же меня заебал этот ебаный sqlite. Реквестирую СУБД что бы можно было тыкать в терминале ctrl+c и она не ломалась нахуй после такого. Надо хранить порядка 50к записей с блобами по ~5мб в каждой.
>>2418363 Это какие-то обфусцированные файлы или нет? Если да, то почему не хранить их отдельно как файл, а в базе держать только линк с айдишником до него?
>>2418703 >Допустим, одного Jest будет достаточно? Достаточно, если ты делаешь либу без зависимостей под ноду только с commonjs модулями. В остальном - нужны инструменты.
>>2415542 (OP) Я могу написать в интерфейсе тип другого интерфейса, в котором есть этот интерфейс? Или за такое по рукам бьют? Просто у меня очень вложенный джсон и создавать ещё интерфейсов к нему не хочется, а названия у свойств сходятся
>>2418553 >Ну вроде надо уметь верстать, нет? Дело одной недели, больше норм разработчик эту хуйню изучать не станет. По диагонали читануть доку - найти макет - сверстать - непонятное гуглить Если на это еще тратить месяцы, то на жс годы уйдут
>>2418741 дели на 2 и вычитай еще 20 скуфов с около нулевыми знаниями, прошедших быстро курс. А дальше уже конкуренция с зумерами, тут ниче не поделаешь
>>2418742 >>2418743 однажды ты спросишь у меня, на кого мне класть хуй больше - рандомного скуфа или тебя? я отвечу скуфа. ты обрадуешься, скажешь спасибо, сделаешь минет и уйдешь, так и не узнав, что рандомный скуф ето ти...................
Двач, меня взяли на работу стажером и поставили на крупный продукт писать свой говнокод, как быть, я же делаю откровенное говно, и сам с этим ничего поделать не могу, а в команде всем все равно?
Я думал, что меня будут постепенно учить писать хороший код, доверяя маленькие задачки, но мне сразу дали писать говно
Есть ли образовательный канал по js лучше, чем этот: https://www.youtube.com/c/UlbiTV? дам за щеку тому, кто напишет, например, про Владилена Минина какого-нибудь
>>2418927 >>2418916 > с самого начала матана с 1 сука класса не понимал С учился в одном из лучших математических лицеев города в А классе, что мне не помешало в 15 лет уйти в путягу и бухать на парах, а потом в последствии стать ряктодеюилом.
>>2419298 Да, именно сочетание "современный жс" это про 2015+ версию. Просто в ecma 2016-17-18-19-20-21-22 добавлялось ну прямо настолько мало фич, что даже неприлично об этом говорить. А вот в 2015 был перелом
>>2419319 Манямирок репортинг ин? Смысл электрона как раз в том, что он браузер запускает, а значит браузерный клиентский код можно тащить на десктоп. Без хромиума он нахуй не нужен.
>>2415542 (OP) двощь делаю адаптив и вроде все норм но на совсем малых размерах появляется эта залупа, никак не могу понять почему, вроде ж должно быть все норм, блок целиком влезает откуда берется эта ебучая шкала?
>>2419354 >- белая тема >- высранный кусок говна вместо вскода >- жангаблядь >- индус хуеглотос - смешливые выебоны - отсутствие ответа по существу на элементарный вопрос стразу видно 9999кк/наносека у которого нет проблем и который совсем не утверждается на анонимной борде нет
>>2419438 >увидь там строчку с оверфловом по иксу ;) да да да ты молодец ты доказал анонам что ты знаешь css на уровне 2 класса начальной школы я горжусь тобой
Словил жесткую апатию. Ничего не хочется делать. Думал на днях порешать кодварс, либо поковырять кишочки реакта, но все никак нету сил. Целый день тупа смотрю видосики на Ютубе. Одна надежда на вас, анонсы: засрите мое говно, чтоб появились силы на рефакторинг: https://github.com/webPrsnr/urban-dictionary. Хотел на хероку задеплоить, но новые акки не решаются.
При проверке под мобилы показывается скрытая часть элемента и все выглядит как на пик 1, а должно быть по идее как на 2 пике примерно, как можно исправить это?
>>2419101 >next >бэкенд у тебя там либо лютый говнокод, либо ты не пишешь бэкенд >>2419160 тебе ли не похуй? открой хх и посмотри. 100 >>2419237 ты можешь создавать свои коллекции на основке класса Array. что должен в таком случае тайпоф вернуть? "мойохуенныйкласснейм"? >>2419239 declare module ".jpg" { const href: string; export default href; } аналогично для остального >>2419263 нет >>2419319 когда мелкомягкие дадут возможность запускать внутри эджа без изъебов >>2419346 reset css подключи для начала и {box-sizing: border-box;} >>2419450 нихуя не понятно кидай весь свой говнокод
>>2419460 >у тебя там либо лютый говнокод, либо ты не пишешь бэкенд /pages/api Это не бэкенд? Или бекенд для тебя это обязательно код с экспрессом каким-нибудь
>>2419545 >бекенд для тебя это обязательно код с экспрессом пчел твой нехт уже имеет экспресс под капотом в большинстве случаев, а не большинство - все еще эксперементальное. >/pages/api максимум что ты можешь здесь высрать - сделать запрос в бд и отдать что-то ну и авторизация. как ты сюда всунешь крон? как ты сюда всунешь миграции? как ты сюда всунешь бизнес логику, которая требует интеграции с несколькими продуктами? никак. потому что нехт жс это не фуллстек фреймворк, даже тот же ремих ран который себя позиционирует как фуллстек им не является.
>>2419546 Блять как будто я стал бы спорить с тем, что я не пишу сложный бэк. Я и не позиционировал себя как фулстек разработчика, моя работа просто капельку сложнее, чем у того, кто просто на реакте сидит. Не обязательно из себя столько желчи выжимать хотя я же на дваче, чего мне еще ожидать
>>2419605 > Стилизуй бордер одинаково по ширине для всех состояний потом сам до этого догадался
> прозрачным цветом а вот это уже нашел на СО, но спс энивей
> ховер/актив меняй только цвет смысл в том что все это хуета ебаная и костыли ублюдские сука я на хую вертел всю эту дрисню ебаную я спать упиздил нахуй.
Кто-нибудь понимает как работает подгрузка постов в куклоскрипте? Обычно если ничего нового он не трахает сеть загрузкой ответа в виде всего json'а, а если без куклоскрипта, то он каждое обновление загружает json. Вот я бы хотел к своему детектору уникальных постов такую же фичу прикрутить, чтобы сеть пользователя не насиловалась. Но в исходнике какой-то ебаный ад, нихуя не понятно.
>>2419645 > Обычно если ничего нового он не трахает сеть загрузкой ответа в виде всего json'а, а если без куклоскрипта, то он каждое обновление загружает json. Так это сервер так отвечает, скрипту-то откуда знать что там изменилось. Скрипт наверное в запросе перекидывает номер последнего поста или дату предыдущего запроса, хз лень смотреть.
>>2419614>>2419612>>2419610>>2419609>>2419606 Верстка от гениального датасаентиста™. Понятно, почему у него трудности с трудоуствойством, никто не смеет позариться на столь светлый ум со своей низменной работой, да и бюджетов никаких на достойную его скиллов оплату не хватит.
СУка, я себе сейчас жопу сожгу, как же горит. МНЕ ПОХУЙ НА ТВОЙ СИНТАКС ЭРРОР, ПОЧЕМУ ТЫ НЕ МОЖЕШЬ ПРОСТО ПРИНЯТЬ ЭТОТ КОД, ХУЕСОСИНА, ПОЧЕМУ В ТЕМПЕРОМНКИ ОН МНЕ НЕ ЖАЛУЕТСЯ, ПОЧЕМУ В БРАУЗЕРЕ ЭТОТ СКРИПТ ИДЕАЛЬНО РАБОТАЕТ, ПОЧЕМУ ЕСЛИ В КОНСОЛЕ ПРОПИСАТЬ АВЕИТ ФЕТЧ ВСЕ ИДЕАЛЬНО СРАБОТАЕТ, НО ТЫ НЕ ХОЧЕШЬ ЕГО ПРОПУСКАТЬ ТУПОРЫЛАЯ ХУЕСОСИНА?!
>>2419846 https://learn.javascript.ru/types-intro >Результат typeof null == "object" – это официально признанная ошибка в языке, которая сохраняется для совместимости. На самом деле null – это не объект, а отдельный тип данных.
>>2420051 чел мне нахуй не нужен твой пакет ебучий с 1к зависимостей и сомнительного авторства, который еще и согласовывать с ИБ нужно, мне нужно просто закрыть модалку
Его продолжают развивать энтузиасты и даже запустили отдельный проект - очень быстрый Phoenix Code Editor работающий в браузере, но который можно развернуть локально.
Я уже попробовал и этот редактор реально быстрее и отзывчивее того же VS Code. Пока находится в альфа версии.
>>2419877 додики трусливые, жалкие создания, что ты от них хочешь, они навернули дерьмища, а теперь трясутся как бы их не выебали за очередной шорох, чмони не могут стукнуть кулаком как Гвидо, и сказать как будет.
>>2419963 кстати да, я поэтому с этой помойки не ухожу, форчан просто ультрапиздец доисторический, но хуле с пендосов взять, они же ректодаунское дерьмо жрут, и их улицы уебищные похожие на блевотный район черкизона в то время
>>2420080 вскод тоже есть в браузере, плюс есть онлайн эдитор(на который мне похуй) с пакетами и всей хуйней
вскод девят не хуеглоты индусские без рук - а свободная тима, точно так же как девы плврайта, они там очень сильно скраю
ну и плюс это ФЛОСС а потому есть сборки без зондов и синка
>>2420144 Причём тут глаза, говно? Он выёбывался на асинхронный жсокал ваш. Из-за этого сидел час в отрицалове, не желая принимать правила игры, но потом сломался и обернул все в асинхронную анонимку.
>>2420146 притом что белая тема - это явный маркер безмозглого дегенерата, тупой ты уебок
>>2420203 если это галера просто так тебе не повысят, надо брать на понт и увольняться (имплаинг ты дохуя ценный раб), но куда ты нахуй денешься с этой подводной лодки?
>>2420223 Так я даже не в идешке писал, а прямо в темпермонки хуйне, проверяя отдельные моменты в консоле браузера. У меня есть вскод, но пришлось бы альтабаться 20 раз чтобы проверить работоспособность. Ну и мне лень его настраивать под js, хз как это все выглядеть будет.
Зачем екмаскрипт тащит за собой наследие из говна и палок? Почему нельзя ввести что-нибудь типа строгого режима "интерпретировать без старой хуйни" и сделать нормальный тайпоф с эрреями и нуллами например.
>>2420288 Потому что куча огромных проектов сделана из этих "говна и палок". Если всё убрать и ввести строгий режим, то неизвестно, сколько времени и денег уйдёт на исправление старого кода. Поэтому проще оставить всё как есть.
>>2420277 На первой попытке решить задачу без ютуба. Тут же приходит осознание, что айти не для всех и 6 месяцев для устройства на первую работу не хватит
половина населения планеты ебашит на нее олмост нан стап
пук-среньк, ой ну да, ну тут не работает, а вот здесь не баг, а фича, ага, вот так делай, я делаю и у меня работает и ты делай, и вообще это не наш баг, насри в другой репке, давай пака.
мне вот интересно это жс дрисня вас так опускает или вы в жс дрисню приходите уже опущенные?
Какой проект можно написать для резюме на рякте, или проще спиздить и выдать за свой чем что-то придумывать, а то вообще идей нет что-бы такого написать!
>>2420549 Проект обычно делается для себя, дабы научиться на практике различным вещам. Во время устройства на работу на твои говнопеты обычно никто не смотрит т.к. понимают, что это может быть просто спизжено или сделано на курсах, а сразу дают тестовое и уже на его основе делают выводы. Если ты спиздишь проект, а не сделаешь его сам, то велика вероятность, что не сможешь адекватно выполнить тестовое.
>>2420531 >половина населения планеты дата_саентист ты ошибся в своих расчетах никто на ней не ебашит все на рякте пишут на ней ебашут только вкатуны вроде тебя
>>2420144 Дорогой друг. Ты ещё в 2011 (!) году занимался фронтом. Что ты делаешь в 2022 году на дваче в теме для начинающих? Понимаешь ли ты, что выглядишь, как долбоёб?
>>2420637 У ноды есть свои фичи "для дурачков". Как у пыхи есть многопоточность о которой не нужно даже задумываться, так у ноды есть асинхронность без сложных проблем.
>>2420637 С одной стороны бэк зачастую это небольшая прослойка между UI и БД, без особых требований к производительности, а с другой - можно шарить часть кода между фронтом и бэком и не искать второго программиста специализирующегося на других языках
Сап, нужно сделать проверку подтверждения почты на vue js, как это сделать? Где почитать? Нужно запретить юзеру заходить на некоторые роуты без верифицированной почты
ректодебильных вакансий всего лишь в два раза больше чем вюшных
и СУРПРИЗ-СУРПРИЗ ректодаунов ровно в теже два раза больше чем вю-господ (которые не жрут тормозное убого дерьмо а просто кайфуют от охуенности)
ну и нахуя это уебище нужно? нет ну если ты чмо опущенное и привык по жизни к боли и унижению то жри дальше эту дрисню, а мне и остальным нормальным людям на вю охуенно.
Есть такое, после твоего поста ради интереса открыл исходники simple-translate расширения, в котором есть функционал пикрила, а там такой пиздец на десяток тысяч строк, в которых нихуя не разобрать.
>>2420927 >вю-господ (которые не жрут тормозное убого дерьмо а просто кайфуют от охуенности) ты сам несколькими тредами ранее доказывал что вуй это кал ебаный для дебилов, а сейчас вдруг эти дебила стали озуенными. еще и кайфуют да >и что? Не понял ничего делаешь проверка на авторизован ли юзер, если нет - редиректишь на логин его >>2421140 >html из строк для начала используй какой-нибудь шаблонизатор, для тупых вкатнов подойдет mustache
>>2421174 >не было было, ты еще не понимал как прокси работает, вот в этом треде винил доку за то что она такая уебищная >>2416550 >даун да, куда мне до синьор пиздабола дата_саентиста
>>2421192 тупой дебил причем тутв ит если про прокси был отдельный пост где ты переменно пытался присвоить значение и оно не вызывало ререндеринг хотя ты тут всем доказывал что должно, тупой ничтожество 80iq
>>2421199 да мне похуй на тебя школьника тупорылого, что бы кому-то доказывать что ты обосрался. ты сам доказал, синхронно читая жсон в контроллере на своем основном(!!!!!) языке
>>2421158 >Обычный for подойдет, ну или forEach. Я пробую и спотыкаюсь на вот этой необходимости вводить новые переменные newString1, newString2, newString3, newString4.
>>2421225 > конечно я обосрался и теперь пыжишь свою обосратую дупу в попытке перефорса моего рнд пайплайна, куда тебе вообще не следует совать свой тупой шакальный жсдриснячий ебасос ;)
> куда мне до бога верстки и бога асинхронного I/O в питоняше :3 абсолютно никуда - это неоспоримый и очевидный факт.
ты не смеешь осознать и толики моих замыслов и намерений, я делаю то что делаю, и ты говно, просто смотри и молча впитывай.
>>2421338 >съебу сразу как только ты мне поможешь с так я тебе помогаю - съебывай нахуй отседова, тебе тут не рады >>2419610 проиграл нах щас бы табы ссылками делать без атрибута href, и ты считаешь себя дата_сантистом после этого?
>>2421380 > ректодебильных заебов дурачек, эти заебы появились задолго до твоего рождения, не точ то до рождения рякта >значение знаешь? что-то связанное с обучением чтения данных с диска наверно? ну типа как читать жсоны что бы тред не блочить?
>>2421516 Сделать HOC обёртку, которая будет из контекста брать текущие роли/пермишны, и сравнивать их с необходимыми ролями/пермишнами, передаваемыми в обёртку через пропы.
>>2421522 При чем тут роутер, я так понимаю что речь не о доступе к целому пейджу, а о том, чтобы отображать/скрывать какие-то отдельные компоненты на пейдже в зависимости от пермишнов
>>2421545 >потому что в прототипе ты все инстансы твоего класса будущие поменяешь а так только этот Наверное.
У меня уже голова пухнет так как не могу понять как все это изучить нормально. Нет схем доступных как это все наследуется. Да и плюс еще классы ввели, плюс _proto_ какого-то хуя существует.
Мне бы блядскую схему чтобы я увидел все в работе. Как ее составить хуево зная предмет? Конспектирую, но в голове пустота че к чему
>>2421548 Прототип это объект, в котором жабаскрипт посмотрит твоё свойство, если ты его спросил, а в самом объекте такого свойства нет. Если ты делаешь объект через функцию конструктор, то можешь положить свой прототип в свойство prototype конструктора, тогда оно создаст объект с таким прототипом. Ещё можно создать через Object.create( прототип [, всякие геттеры и сеттеры там]) Чтобы проверить че там за прототип у твоего объекта используй getprototypeof.
Если ты делаешь объект через класс, то это синтаксический сахар над прототипами, но не похуй ли тебе, просто используй классы как классы. Если ты используешь __proto__, то перестань.
>>2421587 Я бы скорее сказал не "нинужна", а "хуй впихнешь", учитывая припизднутую на всю голову экосистему. Прямо сейчас разгребаю наследие на рякте, переписываю ссаную километровую ad-hoc лапшу на объекты, и охуеваю с того, насколько ряктопараша постоянно ставит тебе палки в колеса. Совершенно идиотские, мудацкие концепции вроде "вьюшка это функция стейта" и "состояние отлично описывается обычными и ассоциативными массивами" необходимым образом приводят к следующему: - все объекты, являющиеся частью стейта или пропами компонента, должны бы иммутабельными; в классовых компонентах хотя бы давали костыль в виде forceUpdate(), в функциональной версии (что блять в них функционального, понять нахуй невозможно, очередной бессмысленный баззворд, налепленный на эту смердящую кучу говна рассчитанный на целевую аудиторию одноклеточных хипстеров) даже и его выпилили, енджой ер попытки впихнуть невпихуемую бизнес-логику в ряктодебильный концепт обновлений компонентов при нарушении ссылочного равенства - редакс сразу улетает нахуй на помойку, потому что этот кусок тупорылого высера обосранных бомжей из цукербергских подвалов не способен работать с чем-либо, кроме тупых JS-объектов. Впрочем, оно и к лучшему, ничего тупее глобальной помойки, где валяется все подряд и куда могут лазить все, кому не лень, придумать было, казалось бы, уже невозможно - вся теория MVC, которую пидарасили десятилетиями, идет нахуй, потому что абрамирование головного мозга позволило макакам вывернуть весь MVC наизнанку, и дойти до того, что внутри ебучей вьюшки хранится вообще все - модель, куски бизнес-логики, куски презентационной логики, тут же мы делаем запросы в сеть, здесь же рыбу заворачиваем, и все это на хуках блять, это просто ебаный абоминейшн и глумеж над 50 годами прогресса. Можно постараться писать не так, но мудацкие ряктоконцепты анальной жопы изо всех сил пытаются загнать в рамки написания именно вот этого спагетти-монстра, где бизнес-логика, контроллер, вьюха, стили, верстка и Аллах все упакованы в один большой мешок с говном. Сепарейшн оф консернс? Не, не слышал (вангую щас вылезет подзалупный ряктосектант и начнет визжать про то, как они КОНЦЕПТУАЛЬНО ПЕРЕОСМЫСЛИЛИ разделение ответственностей; мне на петушиное кукареканье абсолютно насрать)
>>2421606 А вот и первый придурок нарисовался. Ты сам понял, что сказал? Что блять значит "в реакте"? В реакте твоем вообще нихуя нет, ни ООП, ни ФП, ни процедурности, есть только кривожопый DSL, весь вертящийся вокруг referential equality и навязывающий структуру кода, когда все свалено в эти ебучие компоненты, включая бизнес-логику, работу с сетью, стили и т.д. ООП начинается, когда ты решаешь "в пизду и нахуй это дерьмо" и пытаешься писать, как белый человек, выделяя классы с бизнес-логикой и пытаясь придрочить эти классы к ебучим компонентам и ебучему концепту referential equality
Аноны, как называется такой компонент, типо разделяющая хуйня которую можно растягивать туда сюда. Типо эта штука должна отделять части интерфейса. И вот можно ее растягивать либо вообще стянуть в ноль. Хочу загуглить как такое сделать в браузере, но без понятия как эта штука называется.
>>2421609 Угу, только в первозданном виде такую дрочню будет невозможно читать, поэтому ты такой думаешь "зопилю ка я хук под это дело". Запилил. Только блять лучше от этого не стало, потому что когда ты будешь дергать свой ебаный хук для форс-рендера, из чтения кода все равно будет абсолютно невозможно понять, для чего здесь этот форсированный ререндер. Ну и опять же "неидиоматично", Дэн Абрамов не одобряет
>>2421605 Нихуя свидетеля ООП подорвало. Ещё блять и редукс виноват, что жс не сериализует инстансы классов. Ну и в том, что не даёт ООП-дебилу срать мутирующими процедурками. MVC - вырвиглазное говно, придуманное бэкочушками, в котором на поверхности всё по файликам и папкам аккуратно разложено, а как залезешь в шаблоны, то там ехал сайд-эффект с инклюдами через весь серверный контекст.
>>2421621 Ну давай, расскажи мне, о великий фронточмоня, как ты аккуратно у себя в ряктопроекте организуешь модель в виде глобальной помойки с говном, в которую на каждый пук-пердеж надо втыкать новый ебучий редусер-экшн-экшн-креатор-экшн-креатор-креатор, расскажи ка мне, как ахуенно удобно и читабельно дрочиться со злоебучим юзэффектом, когда мудацкий линтер тебе запрещает не только срать, но и пропускать депенденсю у эффекта. Расскажи мне, как ты организуешь свою СЛОЖНУЮ бизнес-логику, которую какой-то мудак запихал на фронт, без ООП, на одной только глобальной помойке и валяющихся по всему проекту ютиль-функциях
>>2421617 Так это хук не для юзерленда, там еще 6 слоев поверх надо, лол. Форс рендер надо дергать в адаптере с твоих сервисов на реакт, в useStore и друзьях, тогда и сервисы читабельные и реакт послушный Сервисы правда надо реактивные в каком либо виде, но просто заворачиваешь данные в монады обзерваблы/прокси и становится полегче
>>2421621 Алсо блять, по каким файликам, по каким папкам? MVC - это подход, в котором ты не лепишь блять бизнес-логику в том же месте, где у тебя стили, анимированные менюшки, загрузка нового списка говна с бэкенда и драг энд дроп. Можешь продемонстрировать мне хотя бы один пример ряктопроекта, который шмог бы хотя бы такое рудиментарное разделение ответственности? Или, вот это открытие, любой понос, высранный на ряктомоче, всегда скатывается к тому, что у нас тут ХУКИ блять, один хук дергает сетку, второй хук дергает модельку, третий хук дергает тебя за анус? Иными словами, вьюшка овнит модель и бизнес-логику. Я что-то за 6 лет дрочения этого говна из жопы ни одного подобного примера так и не увидел, везде ехал юзстейт через юзэффект и попытка выразить логику произвольной сложности в терминах убогих эффектов и ссылочного равенства
>>2421649 Чувак, ты бы хоть книжку открыл, прочитал, что такое MVC. Но нет блять, главное пасть открыть и высрать очередную чушь с умным видом. Типичный ряктодебич. У тебя небось еще ФУНКЦИОНАЛЬНОЕ ДЕКЛАРАТИВНОЕ МЕТАПРОГРАММИРОВАНИЕ жопы?
>>2421625 Ну не нравится редакс, используй что-то другое, мобикс, контекст, реакт квери, бидиректный флоу и ещё наверное есть несколько альтернатив про которые я не знаю. Раньше были классы и люди абсолютно правильно сделали что отказались от них, потому что реакт не про это вообще и подход там не тот в отличии от ангуляра например Задача реакта в том чтобы дать тебе реактивные компоненты за короткое время разработки, он с этой задачей хорошо справляется и справляется ещё лучше с каждым мажорным апдейтом
Да мвс настолько охуенно прописанный архитектурный дизайн что даже ебаные питонисты говорят о бессмысленности контроллер и вью в названии сами говоря мтв
>>2421625 Утильки выносишь в отдельную папочку, переписываешь морду на редакс и вешаешь на него useEffect, либо делаешь отдельный лейер с контекстом в том куске, где хочешь весь контейнер ререндерить, и через контекст прокидываешь вниз объект стейта и функцию его апдейта.
>>2421680 Спасибо за пересказ официальных доков. Что в сухом остатке: - глобальная помойка никуда не делась - чек (и не надо мне тут ля-ля про useReducer и прочую чушь, фронт это в первую очередь про взаимодействие с сетью, useReducer из коробки не дает ни тханков, ни хоть чего-то асинхронного) - переебывание с убогими эффектами для логики, естественным образом выражающейся мутабельностью, и требующей пердолинга для перехода на иммутабельность - чек (дрочево на иммутабельность на фронте это вообще рофл блять; алло блять, у тебя ОДИН ПОТОК сука, у тебя нет никаких дедлоков, синхронайзов и мониторов, нахуя вы вкорячиваете иммутабельность везде блять, где надо и где не надо (особенно где не надо)?) - вьюшка овнит модель - чек - связанность презентации и бизнес-логики - чек
>>2415542 (OP) Аноны, есть кто шарит за Next.JS ? Меня интересует, вот у меня в компоненте дофига текста, могу ли я через SSG за пре-рендерить его, для улучшенного сео и меньшей нагрузки на клиента? Или эта хрень используется когда берём данные вне проекта? сторонние апи там, фетчи. Я так почитал его используют в примерах только на external data https://nextjs.org/docs/basic-features/pages
>>2421635 Ну мысль интересная, только блять сколько же дроченого бойлерплейта надо написать для того, что должно существовать из коробки. >>2421637 Далеко не всегда есть возможность отключить, на последнем проекте было ПОЛИСИ блять, что все конфиги, настройки, воркфлоу, код стайлы и т.д. задаются на уровне компании и хуй ты чо там поменяешь
>>2421744 Выкинь эту парашу на помойку. SSR + SPA - это выкидыш больного воображения цукербергнутых на всю голову мудаков, которые ничего сложнее туду листа ебаного в своей жизни не написали, но туда же блять, ФРЕЙМВОРКИ они стряпают. Хрррптьху блять в ебло этим пидарасам.
>>2421754 Это тупорылый убогий костыль для "оптимизации" скорости загрузки сайтов, которым в принципе в хуй не уперлось быть SPA. Но поскольку тупая мартышка не знает ничего, кроме своего ряктопоноса, она радостно хватает его и бежит клепать лендос, а потом удивляется, пачиму сайтег грузицца по 10 секунд, сео чет по пизде пошло, кэширование не кэширует. Использовать Nextjs, Angular Universal и прочую погань - значит буквально заложить ядерную бомбу под свой проект. Проблемы будут нарастать, как ебаный снежный ком, и вот уже твой лендинг с 10 посетителями в год требует 5 человек для поддержки, потому что на фронте у нас модный фреймворк и все так красиво аккуратно на папочки разбито на хуиллиард "компонентов", потом у нас тут SSR, ой что это, при нагрузке в 100 пользователей сервак начинает падать, надо добавить еще нод, надо навесить cdn, надо навесить балансировщик, ой что это, кэшированные странички на нодах в рассинхроне, надо еще одну ноду для кэширования страничек, ой что это....... Ну и так пока у заказчика не кончатся деньги.
У кого-то был опыт переката с бэка на фронт? Че как было? Как вообще к такому работодатель и интервьюеры относятся? Сам 2 года в джаве, хочу интерфейсы писать нет, мобилки не хочу - хочу веб. На потерю зп из-за понижения грейда похуй.
>>2421758 Да там SSR не везде же можно пихать. Может я не шарю, но блять, как такое может быть что популярный фреймворк, на котором много кто кодит может быть говном, его бы не юзали, звучит как прохладные истории.
>>2421761 >>2421761 Лол, чел, ты рофлишь что ли? Вся индустрия говном обманывается и жрет причмокивая, приговаривая, что это не говно, а сладкие технологии. Реально вменяемых технологий можно по пальцам пересчитать, все остальное это разпиаренная поебень
>>2421744 > Или эта хрень используется когда берём данные вне проекта Компонент со скрина использует то, что ему прокинуть Если захардкодить данные — SSG Если нужно получать с апи и чтобы не всралось SEO — SSR
>>2421766 Да у меня бека нет. Я чисто на хедлесс цмс беру некоторые данные, но в основном просто в компоненте пишу текст и гружу картинки.
Я просто пилю сайт кафедры для диплома, а в беке не особо шарю, а с Strapi уже работал.
Я особо и не знаю что для бека можно прикрутить в принципе, в идеале я так понимаю ждут от меня CMS где люди без кодинга могли бы добавлять инфу, но тогда фронтенд накидывать сложнее, там же конструктор просто в цмске, кодинга 0, а так хоть под диплом будет фронтенд. Кста вот сайт, пока не знаю что ещё можно добавить https://department-university.vercel.app/
>>2421774 И где здесь блять SPA? Это обычная статичная HTMLина с <=10 строчками скрипта. А он NestJS вхуяривать собрал, ояебу. Выбрал бы ченить поприличнее для диплома, если там будут именно на крутость кода смотреть. Алсо, хэдлесс цмски как правило предоставляют уже из коробки интерфейс для редактирования контента. Так что весь твой диплом - это повесить хук на изменение данных в цмс и пересобрать статичный html.
>>2421780 > Алсо, хэдлесс цмски как правило предоставляют уже из коробки интерфейс для редактирования контента. Так что весь твой диплом - это повесить хук на изменение данных в цмс и пересобрать статичный html. Ну, у меня так уже и сделано для картинок на слайдере и в разделе кадровый состав для текста и картинок преподов.
Так а что круче взять? Я бы и сам рад, но по сути весь сайт написан за неделю работы. Я ещё на тайпскрипте пишу чтобы совсем стыдно не было за проект
>>2421780 >>2421781 и чем спа от хтмл тогда отличается? У меня же там нет прогрузки при переходе страниц. Контент будет добавляться, вот надо подумать какой.
>>2421782 Что плохого в прогрузке страниц? Там грузить то нечего, лол, особенно после первого рендера, когда стайлшит, картинки и прочая поебень попадет в кэш. Если прямо вот кушать не можется как хочется, чтобы не было перезагрузки, то просто скриптом втыкаешься в хтмлину, вешаешь листенер на все свои редиректящие батоны/ссылки, грузишь говно с цмс и отображаешь
>>2421776 О, а вот и писатель лендосиков при помощи декларативных глубококонцептуальных мультипарадигменных фронтовысеров подтянулся. Как там баунс у твоего лендинга? 3 пользователя в месяц уже набралось?
>>2421749 > из коробки Не фреймворк даже не либа, РАНТАЙМ для дивов mobx попробуй, оче мало обвязочного кода надо только доставлятор сторов до компонентов написать
>>2421734 Ну, смотри. Модель и контроллер можно вынести из вьюшки в редакс/контекст, во вьюхе только дёргать нужные методы для взаимодействия. Даже форсить ререндер можно не через эффекты, а через обновление пропсов, взятых из редакса/контекста. Апи выносится в отдельный контрол и держится где-то подальше от компонентов, чтоб не влезли любители пощекотать очко. Наружу оставляешь торчать только экспортированные функции. В новом ес можно сразу экспортировать импорты, чтоб в проекте дёргать всё апи из одного файла. Остаётся только глобальная помойка. Но и это лишь отголоски детских болезней, когда два контекста одновременно уже было больно. А редакс это вообще сорт оф локалстореж, ты же не жалуешься, что у тебя локалстореж это единая глобальная помойка на весь сайт? Со вторым пунктом нихуя непонятно, но звучит как претензия ко всему js.
>>2415542 (OP) Спасайте. Где можно прокачать ООП скилл на реальных задачках чтобы была какая-нибудь перепроверка? Есть тут анон который бы помог? Я пока осваиваю (времени нет к сожалению) и в будущем хотел бы покачаться на задачах и кодревью чтобы получить критику говно-не говно, правильно/лажово.
script type=module сука, на дворе 2023 год Операторы в языке отбиваются пробелами, научись писать форматированный код и вынь хуй изо рта var_dump не возвращает json на вывод, хуйло, открывай документацию по php и читай до посинения.
>>2422243 На дворе 2023 год, а ты до сих пор не прикасался к живой женщине, потому сидишь и высираешь токсичную хуйню в интернетах, тебе приходится довольствоваться лишь собственным хуём во рту, но ты по привычке всё равно советуешь всем окружающим его высунуть изо рта, думая, что все таким занимаются
>>2422274 Так а почему не меняется content-type, если я в headers изменения указал? Алсо, var_dump или echo указать, ничего не меняется, echo json_encode тоже
>>2422305 Слушай, съебись-ка ты все-таки в пхп нить читать учебник из шапки, ты же нихуя не понимаешь, как он работает, а к жс это отношения не имеет. json из post запроса с content-type: application/json в $_POST не попадает, либо гугли как парсить, либо ставь хедер content-type: multipart/form-data или application/x-www-form-urlencoded
>>2422243 >script type=module сука, на дворе 2023 год уебище тупое нахуя ему module если там нет модулей??? ты в 2023 году не знаешь про defer ублюдок? >>2422305 >Только почему-то до сервера доходит пустой массив вместо json-объекта потому что пыха без костылей работает только с FormData, с жсонами там все хуево
>>2416326 Сам автор именующий себя не иначе как "Димыч", клянётся, что курс не устарел, что учиться можно на классовых компонентах, что он в курсе даёт такие фундаментальные вещи, которые не дает больше никто в мире среди обучающих Реакту. Он клянётся, что с классовых компонентов можно переучиться на функциональные по щелчку пальцев.