Frontender Libs - обзор библиотек JS / CSS
8.48K subscribers
2.01K photos
730 videos
1 file
236 links
Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Менеджер по рекламе: @Spiral_Yuri

Купить рекламу: https://telega.in/c/sWebDev
Download Telegram
Работа с роутами в React

Какой метод в React Router позволяет загружать дополнительные роуты динамически?

Забыли? Вернитесь к посту от 22.07.2024.

👉 @sWebDev
🔥3
Какой метод в React Router позволяет загружать дополнительные роуты динамически?
Anonymous Quiz
40%
LoadDynamicRoutes.
14%
Unstable_patchRoutesOnMiss.
11%
PatchRoutesDynamically.
35%
AsyncLoadRoutes.
👍3
Никому не говорите, что вы программист.

👉 @sWebDev | #юмор
👍6
Создание контекста с использованием React.createContext

Контекст передает данные через компонентное дерево без пропсов. React.createContext создает глобальное состояние.

1. Создаем контекст и компонент-провайдер:
import React, { createContext, useState, useContext } from 'react';
const ThemeContext = createContext();
const ThemeProvider = ({ children }) => {
const [theme, setTheme] = useState('light');
return (
<ThemeContext.Provider value={{ theme, setTheme }}>
{children}
</ThemeContext.Provider>
);
};



2. Используем контекст в дочернем компоненте:
const ThemedComponent = () => {
const { theme, setTheme } = useContext(ThemeContext);
return (
<div>
<p>Current theme: {theme}</p>
<button onClick={() => setTheme(theme === 'light' ? 'dark' : 'light')}>
Toggle Theme
</button>
</div>
);
};



3. Оборачиваем приложение в ThemeProvider:
const App = () => (
<ThemeProvider>
<ThemedComponent />
</ThemeProvider>
);
export default App;



👉 @sWebDev
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
Animated Unsubscribe Page

Интерактивная анимация страницы отписки на GSAP.

👉 @sWebDev
👍5
Часто задумываетесь об удобстве пользователей?

❤️ - Да.

👍 - Нет.

👉 @sWebDev | #юмор
23👍1
Lottie-web

Lottie-web - это библиотека, разработанная компанией Airbnb для рендеринга анимаций, созданных в Adobe After Effects, в веб-приложениях. Анимации экспортируются из After Effects с использованием плагина Bodymovin и могут быть легко встроены в ваши веб-страницы с помощью Lottie.

👉 @sWebDev
👍7
Получение данных с помощью Server Actions в Next.js

Статья обсуждает способы получения данных в Next.js с использованием серверных действий (Server Actions) и клиентских компонентов (Client Components). Автор объясняет, как использовать серверные компоненты для получения данных и как клиентские компоненты могут извлекать данные через обработчики маршрутов. Также рассматриваются преимущества и недостатки каждого подхода, и делается вывод о необходимости улучшения методов извлечения данных в будущих версиях Next.js.

👉 @sWebDev
👍3
Downshift

Downshift - это библиотека для создания гибких и доступных дропдаунов (выпадающих списков) и автозаполнения. Она предоставляет низкоуровневый API, что позволяет контролировать внешний вид и поведение компонентов.

👉 @sWebDev
👍31
Работа с useSetState в React

Для чего используется хук useSetState в React?

Если забыли, то вернитесь к посту от 29.07.2024.

👉 @sWebDev
👍4
Любите джунов?

❤️ - Да.

👍 - Нет.

🤔 - Я джун.

👉 @sWebDev | #юмор
🤔4022👍11
Динамические компоненты в Angular

ComponentFactoryResolver в Angular позволяет создавать и управлять динамическими компонентами, которые создаются и уничтожаются в ходе работы приложения.

Сначала создаем динамический компонент, а затем основной компонент с ComponentFactoryResolver:
import { Component, ViewChild, ViewContainerRef, ComponentFactoryResolver } from '@angular/core';
import { DynamicComponent } from './dynamic.component';

@Component({
selector: 'app-root',
template: `<div #container></div>
<button (click)="loadComponent()">Load Component</button>`,
})
export class AppComponent {
@ViewChild('container', { read: ViewContainerRef, static: true }) container: ViewContainerRef;

constructor(private componentFactoryResolver: ComponentFactoryResolver) {}

loadComponent() {
const componentFactory = this.componentFactoryResolver.resolveComponentFactory(DynamicComponent);
this.container.clear();
this.container.createComponent(componentFactory);
}
}

👉 @sWebDev
👍4
Media is too big
VIEW IN TELEGRAM
COLORON GAME

Игра на реакцию реализованная с помощью GSAP, ES6 и Flexbox.

👉 @sWebDev
👍4
Macy.js

Macy.js - это библиотека для создания сеток (grid layout) в веб-приложениях. Она предназначена для упрощения задачи создания адаптивных сеток, что особенно полезно для галерей изображений, портфолио и других контентных сайтов.

👉 @sWebDev
👍3🤔3
This media is not supported in your browser
VIEW IN TELEGRAM
Responsive Scroll-Driven Text Reveals

Анимированный скролл с использованием GSAP.

👉 @sWebDev
👍4
Оптимизация Производительности Angular С Помощью Кэширования HttpInterceptor

Статья описывает, как оптимизировать производительность Angular-приложений с помощью кеширования запросов через HttpInterceptor. В ней объясняется, что кеширование позволяет значительно сократить время загрузки данных, избегая повторных запросов к серверу.

👉 @sWebDev
👍3
Media is too big
VIEW IN TELEGRAM
Storm

Стилизованный шторм на Anime.js.

👉 @sWebDev
👍4