Полностью согласен! JavaScript для веба универсален, и Сергей Горностаев , автор про него спрашивал. Nodejs такой же парсер для backend как и платформы других языков, вот только очевидного факта, что ваять на JavaScript можно и back, и front и даже кроссплатформенный десктоп, мобильные приложения - вплотную никто не видит!
Я сам не пробовал (поэтому точно не отвечу) но в теории представляю как это работает. Экспресс умеет создавать коллбэки на соответствующие события, например запрос к серверу. По запросу нужно будет попросить сборщик сложить весь скомпилированный код в корень сервера, в соответствующую папку.
Относительно сборщика, я бы посмотрел на него: https://parceljs.org/
У него самая высокая скорость бандлинга - на сервере это имеет значение. Ну и в документации react почитай про SSR - наверняка что-то об этом есть
Владимир Фролов, что? Я вообще не понял к чему ты это сказал и почему ты решил сопоставить именно медсестру и именно из США? Очередной стереотип о том что у медперсонала нет выходных. У всех они есть, но если медсестра на выхах изучает анатомию/фармацевтику, то да.
Oleg Urievich, что у ретин высокая концентрация пикселей (dpi) - оттого их не видно, оттого все jpg и png для ретины подтягивают картинки получше - весят они больше, если экран не ретина, то загружать можно и обычные картинки. Чекнуть экран и все возможности юзера могёт modernizr. От его анализа клиента можно написать js для изменения картинок на картинки специально для ретины, которые называются, к примеру, так же, но с каким-нибудь префксом... ret_ к примеру, добавив lazyload на эти картинки.
Обычно все эти приколы - уже доработка оптимизации выкаченного на прод проекта. Так сказать, если время есть
Oleg Urievich, да, забыл сказать. Картинка одна, а в стилях в медиазапросы кидаем аналоги изменения размеров. transform: scale(0.5) для x2 и 0.33 для x3 ну и image-rendering: optimizeQuality для поправок после transform
Oleg Urievich, а кто мешает background-image вставлять инлайново через style? Кроме того поддержка object-fit в ie 11 пролетает, поэтому я всегда так делаю, если нужно создать cover size. Я понимаю, что инлайнить стили плохо, но в данном случае это оправдано
Денис Ефремов, Vue прикольный и простой в понимании, но я ещё не решил, будет ли он моим первым.... Я всех их не понимаю. Ни vue, ни react, ни angular. Последний мне показался самым простым. Я читаю всякие прибаутки на этих фреймворках и понимаю что написано. А написать подобное сам не могу - не хватает эрудиции. Так лень бежать за поездом, который отправился ещё в далёком 14-15м =) А надо
Структура интересная - разметка + стиль + скрипт в одном файле.
Денис Ефремов, я помню как меня запарил ajaxform своими script вставками в мой фронт, я написал свой jform, со своей валидацией со switch case на клиенте, формированием данных в formdata и решил проблему больше чем одного вызова formit на странице передачей дополнительно ключзначения submitVar=submitVar .
Денис Ефремов, у MODX есть лишь один минус, который с опытом превращается в плюс - его универсальность даёт возможность создавать франкенштейнов. Порой я рефакторил за приличные бабки на фрилансе, при этом ничего не доставляло хлопот - просто создай шаблон, переобуй в него сайт - редистеди. Интерфейс админки (на extjs) адово удобен и минималистичен. Никакой тонны ненужного хлама в стиле 1С bitrix.
Ну раз уж о более низком уровне заговорили, советую также перейти на linux или macos - даст умение пользоваться командной строкой, ставить вебсервер на локалку, настраивать локалхосты (не делать ничего на продсервере - уволят) , приучиться пользоваться софтом из командной строки - cli - command line interface mtfk (от ssh, scp до git, npm) - немного кисадменства ни одному разрабу ещё не вредило =)
b4rret, крч ты разобрался))) swiper нелогичен в некоторых моментах после его недавнего обновления до 4й версии, но поковырявшись в api, потыкая брэйкпоинты и console.log постепенно начинаешь вникать. Недавно мне пришлось поднимать iphone над родительским блоком, слайдера, в котором он находился. Создал дубликат, положил туда копию айфона и вызвал ивенты slideChange для синхронизации основного слайдера с его клоном - очередной подводный камень либы - при инициализации swiper + loop: true вызывает clideChange которого, визуально не заметно. Подумал подебажил - нашёл runCallbacksOnInit.
Игорь, на самом деле он просто плохо объяснил, но я постараюсь перевести. Он, видимо, дал простой пример. Ему нужно из этого примера просто высчитать пропорцию - window width к selector height. При resize изменять высоту селектора. Скорее всего от динамически изменяющейся высоты шапки чуви хочет отсчитать. Или что-то вроде того.
В любом случае SHentai прошу наглядный пример необходимого. Без js в твоём случае не выкрутиться
Одиночка Айс, лол. Я обосновал свои причины идти в ногу со временем. У меня унижение подкреплялось конструктивизмом. Ты просто решил ядом плеваться. Ну окей. Оставайся при своём - хуже от этого только тебе
Terras, не, js-фреймворк использовать необязательно. nodejs работает в связке именно с backend плюшками. Т.е 1 верно - php отдаёт json - можно даже без запроса, а по интервалу кэширования (при больших объёмах возможно потребуется mongoDB, я ещё не знаю) , nodejs обсервит папку, куда напрявляется json с данными, как только данные сформированы express в связке с шаблонизатором (тут их много - выбирай не хочу - есть мнение что ejs самый шустрый) клеит их с шаблоном, формируя юзеру готовую разметку. Каждому юзеру по temp-папке. Ну и отдаёт запрос. После посещения папка юзера удаляется. Как отловить окончание посещения я ещё не знаю. Я думаю можно чекнуть через beforeunload от фронта и передать ивент на сервер