Как стать автором
Обновить
237.19
Рейтинг

JavaScript *

Прототипно-ориентированный язык программирования

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Next.js: подробное руководство. Итерация вторая

Блог компании Timeweb Разработка веб-сайтов *JavaScript *ReactJS *


Привет, друзья!


Хочу поделиться с вами заметками о Next.js (надеюсь, кому-нибудь пригодится).


Next.js — это основанный на React фреймворк, предназначенный для разработки веб-приложений, обладающих функционалом, выходящим за рамки SPA, т.е. так называемых одностраничных приложений.


Как известно, основным недостатком SPA являются проблемы с индексацией страниц таких приложений поисковыми роботами, что негативно влияет на SEO.


Впрочем, по моим личным наблюдениям, в последнее время ситуация стала меняться к лучшему, по крайней мере, страницы моего небольшого SPA-PWA-приложения нормально индексируются.


Кроме того, существуют специальные инструменты, такие как react-snap, позволяющие превратить React-SPA в многостраничник путем предварительного рендеринга приложения в статическую разметку. Метаинформацию же можно встраивать в head с помощью таких утилит, как react-helmet. Однако Next.js существенно упрощает процесс разработки многостраничных и гибридных приложений (последнего невозможно добиться с помощью того же react-snap). Он также предоставляет множество других интересных возможностей.



Обратите внимание: данная статья предполагает, что вы обладаете некоторым опытом работы с React. Также обратите внимание, что заметки не сделают вас специалистом по Next.js, но позволят получить о нем исчерпывающее представление.


Заметки состоят из 2 частей. Это часть номер два.


Итерация первая

Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 1.9K
Комментарии 0

Новости

Делаем автоматическое отображение ошибок контрола в ангуляре

JavaScript *Angular *TypeScript *
Из песочницы

Работа с формами - одна из фундаментальных задач которой сталкиваешься при написании фронтенд-приложения.

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

В данной статье посмотрим как можно добавить автоматичекое отображение ошибок под вашими контролами без километров копипасты.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 795
Комментарии 0

SlackBot на минималках для работы с кандидатами

JavaScript *Node.JS *TypeScript *

Давайте представим, что есть кандидат, и у него есть несколько этапов найма (интервью с hr, техническое интервью, согласование с руководством и тд.). По некоторым этапам HR сотруднику приходилось руками передавать информацию по кандидату в разные чаты, что неудобно и требовало время и внимание HR. Поэтому появилась идея это автоматизировать.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 711
Комментарии 0

5 возможностей JavaScript ES12, которыми стоит воспользоваться уже сегодня

Блог компании RUVDS.com Разработка веб-сайтов *JavaScript *
Перевод
Стандарт ECMAScript 2021 (12 редакция) выпущен 22 июня 2021 года. Вместе с ним появились новые возможности и новые синтаксические конструкции. Все эти улучшения направлены на то, чтобы сделать JavaScript надёжнее и стабильнее, чтобы разработчикам легче было делать своё дело.



Я подробно расскажу о 5 самых интересных возможностях ECMAScript 2021. Это позволит вам приступить к их использованию в своих проектах, что упростит вам работу и улучшит ваш код. Эта статья может оказаться полезной как начинающим, так и опытным разработчикам.
Читать дальше →
Всего голосов 40: ↑40 и ↓0 +40
Просмотры 9.5K
Комментарии 14

Говорим о фронтенде: видео докладов с конференции ЮMoneyDay

Блог компании ЮMoney JavaScript *Разработка игр *Тестирование веб-сервисов *Конференции

У нас подоспели кейсы по фронтенду с большой IT-конференции ЮMoneyDay. 13 ноября спикеры рассказали о процессах в компании и тонкостях разработки.

Из первого доклада о современном тестировании фронтенда: «Релизы катятся часто, в день у нас может быть до 100 релизов, каждый мы тестируем и собираем статистику. Сейчас 85% критических тестов проходят автоматически».

Во втором докладе инструментарий для создания геймификации и опыт работы над игрой ЮVillage.

Все подробности — в докладах под катом.

Смотреть кейсы по фронтенду
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 501
Комментарии 0

JavaScript: заметка о WebAssembly

Блог компании Timeweb Разработка веб-сайтов *JavaScript *WebAssembly *


Привет, друзья!


В 2019 году WebAssembly (далее — WA или wasm) стал четвертым "языком" веба. Первые три — это, разумеется, HTML, CSS и JavaScript. Сегодня wasm поддерживается 94% браузеров. Он, как утверждается, обеспечивает скорость выполнения кода, близкую к нативной (естественной, т.е. максимально возможной для браузера), позволяя портировать в веб десктопные приложения и видеоигры.


Что не так с JS?


JS — это интерпретируемый язык программирования с динамической типизацией. Динамическая типизация означает, что тип переменной проверяется (определяется) во время выполнения кода. И что с того? — спросите вы. Вот как определяется переменная в C++:


int n = 42

Такое определение сообщает компилятору тип переменной n и ее локацию в памяти. И все это в одной строке. А в случае с определением аналогичной переменной в JS (const n = 42), движку сначала приходится определять, что переменная является числом, затем, что число является целым и т.д. при каждом выполнении программы. На определение и (часто) приведение (преобразование) типов каждой инструкции уходит какое-то время.

Читать дальше →
Всего голосов 14: ↑13 и ↓1 +12
Просмотры 4.5K
Комментарии 11

Мой опыт работы с необычным подходом к построению группы React приложений

JavaScript *ReactJS *

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

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

Если у тебя есть какие то замечания (или находишь статью душноватой), дополнения или можно как то написать статью лучше, то пожалуйста напиши об этом в комментарии, мне будет очень интересно почитать :)

Читать далее
Рейтинг 0
Просмотры 1.8K
Комментарии 6

Figma plugin API человеческим языком. Часть 2

JavaScript *HTML *API *
Tutorial

Часть 2
Взаимодействие с Figma

В статье про написание скриптов для  Adobe After Effects я предложил читателям сделать песочницу кода, работающую прямо в AE. Давайте теперь сделаем такую же и для Figma. За основу можно взять заготовку из предыдущей статьи. Здесь вы найдете необходимые для работы плагина файлы manifest.json, index.html и plugin.js.

Для начала откроем manifest.json и заменим значение поля name на актуальное. Я назвал плагин Script Notepad.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 804
Комментарии 9

Div на div’е не сидит и div’ом не погоняет: пишем семантически верные индикаторы загрузки на Angular

Блог компании TINKOFF JavaScript *Accessibility *Angular *TypeScript *

Сверстать собственный индикатор загрузки — одна из самых простых задач, с которой может столкнуться веб-разработчик. Для получения рабочего решения пригодятся базовые знания HTML и CSS, а JS будет нужен лишь для управления процентом выполненной задачи.

Однако эта простота обманчива. Интернет наполнен множеством решений, в которых индикатор загрузки анатомически состоит из кучи вложенных друг в друга div-контейнеров, приправленных щепоткой CSS. Не нужно так! В мире грустит один котенок, когда вы игнорируете семантику верстки и забываете про доступность (a11y).

В этой статье я расскажу, как мы в проекте Taiga UI подошли к написанию собственных Angular-компонентов ProgressBar и ProgressCircle.

Читать далее
Всего голосов 20: ↑20 и ↓0 +20
Просмотры 3.7K
Комментарии 0

Как работает Автотрекинг

Разработка веб-сайтов *JavaScript *Программирование *ReactJS *Ember.js *
Перевод

Это пост - третий из серии постов об автотрекинге - новой системе реактивности Ember.js. В этой серии я также обсуждаю общие принципы реактивности и то, как они проявляются в мире Javascript. (Прим пер.: ссылки на переводы предыдущих двух: 1. Что такое реактивность? 2.Что делает реактивную систему хорошей? )

В прошлом посте мы обсудили несколько моделей реактивности вывели несколько принципов для дизайна хорошей реактивной системы. Этот пост посвящен тому, как устроен автотрекинг, и как он удовлетворяет вышеуказанным принципам.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 1K
Комментарии 0

Figma plugin API человеческим языком

JavaScript *HTML *API *
Tutorial

Часть 1

Hello World!!!

Второй раз сталкиваюсь с написанием плагина для Figma и второй раз недоумеваю, зачем так сложно? Ну, в общем-то, ничего особо сложного нет. Но вот этот TypeScript, это зачем все? Установи модули, настрой публикацию. Сколько я не думал, единственное объяснение, зачем все это нужно, это защита от дурака. Типа, кому надо - разберется, а остальным и нечего лезть, говнокод плодить.

Ну так, мы развеем этот снобистский тренд и прорубим ход в API Figma для всех желающих.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 1.1K
Комментарии 0

Релизим фронтенд несколько раз в день

Блог компании SuperJob Тестирование IT-систем *JavaScript *ReactJS *

Меня зовут Петр Солопов, я руковожу фронтенд-разработкой в SuperJob. В этой статье хочу рассказать об опыте ежедневных релизов у нас в компании, зачем мы это делаем и почему это не так страшно, как кажется.

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

Читать далее
Всего голосов 25: ↑25 и ↓0 +25
Просмотры 6K
Комментарии 26

[Redux] Мой любимый устаревший вопрос на собеседовании

JavaScript *ReactJS *

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

Читать далее
Всего голосов 30: ↑23 и ↓7 +16
Просмотры 45K
Комментарии 63

Основные варианты использования CSS-переменных (Custom Properties)

CSS *JavaScript *HTML *

CSS Variables или CSS Custom Properties уже давно используются в разработке и поддерживаются большинством популярных браузеров. Если у вас нет обязательного требования разрабатывать под IE, то вполне вероятно, вы уже успели оценить их преимущества.

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

Читать далее
Всего голосов 16: ↑16 и ↓0 +16
Просмотры 3.5K
Комментарии 8

Автоматизируем рутину в работе с HTML/CSS/JS

JavaScript *Системы управления версиями *HTML *Облачные сервисы
Из песочницы

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

Курсивом выделены термины, которые описаны в конце статьи.

P.S. В данной статье вы не узнаете углублённо о каждом описанном инструменте, будет рассказываться поверхностная информация. Далее разделы этих статей будут разветвляться на более глубокие и узконаправленные.

Познай великую силу, юный падаван
Всего голосов 7: ↑2 и ↓5 -3
Просмотры 4.5K
Комментарии 20

Хуки — это лучшее, что случилось с React

Блог компании RUVDS.com Разработка веб-сайтов *JavaScript *ReactJS *
Перевод
React — это самая популярная фронтенд-библиотека из экосистемы JavaScript. Она известна простотой использования и читабельностью кода, создаваемого с её применением. Это позволяет организациям самых разных масштабов успешно внедрять данную библиотеку. Но компоненты, основанные на классах, это громоздкие конструкции, с которыми непросто разобраться. Хуки позволяют работать с состоянием компонентов, с методами их жизненного цикла, с другими механизмами React без использования классов.



В этой статье мы поговорим о том, что такое React-хуки, о том, что отличает их от других механизмов библиотеки, и о том, почему они — это лучшее, что случилось с React.
Читать дальше →
Всего голосов 44: ↑34 и ↓10 +24
Просмотры 6.2K
Комментарии 52

О некоторых аспектах сложных Angular проектов

Разработка веб-сайтов *JavaScript *Angular *

Как ранее было отмечено в предыдущем посте концепция рабочего каталога Angular закономерно эволюционировала до поддержки полноценных workspace - проверенный и понятный способ управления сложностью при масштабировании процесса разработки (Visual Studio Solution , SBT Multi-Project builds , Gradle Multi-Project Builds , RushJS , Lerna и др. ).

Для каждого, кто практически сталкивался с Angular проектом средней руки, не будет секретом, что angular.json может легко содержать тысячи строк убористого JSON, с невероятным, даже нарочито избыточным количеством дублирующейся информации. Проблема отнюдь не новая и дающая о себе знать при eмасштабировании процесса разработки сложного продукта. Компактность и человеко-читаемость формата явно не была в приоритетах, и как-бы намекает, что человеку тут и нечего делать. Из этого и будем исходить.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Просмотры 1.7K
Комментарии 3

Дайджест свежих материалов из мира фронтенда за последнюю неделю №493 (8 — 14 ноября 2021)

Разработка веб-сайтов *CSS *JavaScript *HTML *
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Просмотры 4.8K
Комментарии 3

Введение в отладку на примере Firefox DevTools, часть 3 из 4

Firefox Разработка веб-сайтов *JavaScript *Отладка *Браузеры
Перевод

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

Читать про стек вызовов
Всего голосов 13: ↑11 и ↓2 +9
Просмотры 2.6K
Комментарии 3

Создание SSR веб приложения на React и NodeJS с нуля до деплоя (статья 1)

JavaScript *Node.JS *ReactJS *
Из песочницы

Добрейшего времени суток %HABRUSER% и проходящим мимо, в первую очередь я очень рад что ты открыл эту статью, без шуток :)

Данная серия публикаций посвящена созданию сервиса runwith суть которого вы сможете почитать ниже. Это мой первый независимый проект, поэтому буду очень рад вашим комментариям и конструктивной критике касаемо стиля написания статьи и кода в целом, надеюсь тебе будет полезно и интересно, приятного чтения!

Читать далее
Всего голосов 6: ↑3 и ↓3 0
Просмотры 1.9K
Комментарии 9

Вклад авторов

Работа