Frontender Libs - обзор библиотек JS / CSS – Telegram
Frontender Libs - обзор библиотек JS / CSS
8.1K subscribers
2.04K photos
735 videos
4 files
247 links
Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Купить рекламу: https://telega.in/c/sWebDev
Download Telegram
JS | Guess.js - предсказываем поведение пользователя

Guess.js использует технику, предиктивной предварительной выборки. Используя данные из источника аналитики, такого как Google Analytics, Guess.js позволяет веб-приложениям предварительно загружать ресурсы только тогда, когда они могут понадобиться, учитывая поведение пользователя.

Например, есть веб-сайт с тремя страницами. Из Google Analytics мы знаем, что пользователь посетит страницу «О нас» с главной страницы с вероятностью 95%, а вероятность перейти на страницу контактов - только 5%. Пока пользователь находится на главной странице, мы можем загрузить все ресурсы со страницы «О нас», чтобы последующий переход был максимально быстрый.

Поддерживает работу со статичными сайтами, gatsby, next.js и nuxt.js
Искусство компонентов. Пишем карточку контакта Facebook Messenger

Компонент, который пиксель-в-пиксель по макету может быстро перестать работать, когда столкнётся с реальным контентом настоящего проекта. В статье на примере простой карточки контакта показывается как много нюансов разметки и стилей может появится при разработке компонента.
Что выведется в консоль при клике на див с ид child
Anonymous Quiz
27%
bar
29%
foo bar
39%
bar foo
5%
foo
Какой из этих сниппетов отработает успешно?
Anonymous Quiz
22%
1
28%
2
33%
Оба
16%
Ни одного
JS | Деструктуризация объектов

Деструктурирующее присваивание – это специальный синтаксис, который позволяет нам «распаковать» массивы или объекты в кучу переменных, так как иногда они более удобны.

Деструктуризация массива
let arr = ["Ilya", "Kantor"]

// деструктурирующее присваивание
// записывает firstName=arr[0], surname=arr[1]
let [firstName, surname] = arr;

console.log(firstName); // Ilya
console.log(surname); // Kantor

Деструктуризация объекта
let options = {
noscript: "Menu",
width: 100,
height: 200
};

let {noscript, width, height} = options;

console.log(noscript); // Menu
console.log(width); // 100
console.log(height); // 200

Более сложные примеры разобраны в документации.
CSS | Привет, Глассморфизм

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

Этого эффекта можно легко добиться с помощью css используя backdrop-filter.
HTML | Адаптивные изображения для всех

В современном вебе использовать неадаптивные изображения - моветон. Тег picture, атрибуты sizes и srcset у тега img позволяют гибко решать эту проблему. В статье на примерах наглядно объясняются принципы создания респонсивных изображений.

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

<src="/path/to/img.jpg" srcset="/path/to/img@2x.jpg 2x">
PHP | preg_replace

preg_replace - встроенная в php функция, которая заменяет символы, попадающие под регулярное выражение, на указанную строку.

С помощью нее можно, например, удалять все пробельные символы из строки или очищать номер телефона от форматирования.
Что выведется в консоли?
Anonymous Quiz
30%
0
28%
1
27%
undefined
15%
Reference Error
This media is not supported in your browser
VIEW IN TELEGRAM
JS | Встроенные связанные слайдеры

Слайдер, который можно перелистывать колесиком мыши довольно удобен, пока не возникает необходимость добавить в него еще один слайдер, в примере показа реализация встроенных слайдеров с использованием swiper.
PHP | PHPOffice

PHPOffice - набор пакетов для работы с различными офисными документами.

PHPWord - для текстовых документов в форматах doc, docx, otf, rtf

PhpSpreadsheet - для электронных таблиц xls ,xlsx, ods

PHPPresentation - для презентаций pptx, odp

Данные библиотеки позволяют как читать, так и создавать файлы в указанным форматах.
CSS директивы @supports и CSS.supports (JavaScript) помогут разработчикам определять справится ли браузер пользователя с CSS свойством или нет.

Синтаксис директивы @supports такой же, как и у @media запросов:
@supports(prop:value) {
/* стили */
}

Простая проверка свойства
@supports (display: flex) {
div { display: flex; }
}

Ключевое слово not
@supports в паре со словом not осуществляет проверку на отсутствие поддержки какого-либо свойства:
@supports not (display: flex) {
div { float: left; } /* задан альтернативный стиль */
}

Больше примеров использования и подробности в статье.
PHP | Php Inspections (EA Extended)

Если Вы используете PhpStorm, то наверняка пользуетесь различными инспекциями, которые позволяют держать Ваш код в порядке.

Php Inspections (EA Extended) - плагин для PhpStorm, который добавляет еще инспекций.
This media is not supported in your browser
VIEW IN TELEGRAM
JS | Как узнать что блок виден на экране

Intersection Observer API позволяет веб-приложениям асинхронно следить за изменением пересечения элемента с его родителем или областью видимости документа viewport, узнать сколько процентов блока видно на экране (0 не виден, 1.0 - полностью виден), выполнять коллбэк при достижении определенных процентов видимости блока.
CSS | Caniuse.com поможет с новыми технологиями

Caniuse.com не только может показать поддержку свойства в браузерами, но и подсказать вендорные префиксы, ссылки на полифиллы и известные проблемы.