Nano ID
Легковесная библиотека для генерации уникальных идентификаторов с использованием криптографически безопасного случайного числа. Nano ID может генерировать идентификаторы различной длины и с разными параметрами, такими как использование только символов верхнего или нижнего регистра, цифр, а также символов из пользовательского набора.
Пример использования библиотеки Nano ID для генерации случайного идентификатора длиной в 10 символов с использованием символов верхнего, нижнего регистра и цифр:
👉 @sWebDev
Легковесная библиотека для генерации уникальных идентификаторов с использованием криптографически безопасного случайного числа. Nano ID может генерировать идентификаторы различной длины и с разными параметрами, такими как использование только символов верхнего или нижнего регистра, цифр, а также символов из пользовательского набора.
Пример использования библиотеки Nano ID для генерации случайного идентификатора длиной в 10 символов с использованием символов верхнего, нижнего регистра и цифр:
import { nanoid } from 'nanoid';
const id = nanoid(10);
console.log(id);
// "g5U5Fzv1iR"
Библиотека будет полезна для различных задач, связанных с генерацией уникальных идентификаторов. Например, для генерации ID для элементов интерфейса, идентификации пользователей, создания временных токенов и т.д.👉 @sWebDev
👍6
Как условно рендерить элементы на основе булевого значения Vue.js?
Используя одну из директив Vue мы можем рендерить элементы на основе булевого значения. Какая это директива?
👉 @sWebDev
Используя одну из директив Vue мы можем рендерить элементы на основе булевого значения. Какая это директива?
👉 @sWebDev
👍5
Vue директива для условного рендера элементов?
Anonymous Quiz
10%
v-bind
12%
v-model
74%
v-if
4%
v-slot
🤯5👍3
Использование хуков React
Материал по работе с хуками в React. Автор рассказывает о работе с хуками жизненного цикла, хуками контекста и кастомными хуками React.
👉 @sWebDev
Материал по работе с хуками в React. Автор рассказывает о работе с хуками жизненного цикла, хуками контекста и кастомными хуками React.
👉 @sWebDev
👍6🔥3
Настраиваем объект, передаваемый родительскому компоненту React
Хук
Мы экспортируем дочерний компонент
👉 @sWebDev
Хук
useImperativeHandle в React используется для передачи определенных функций из компонента-родителя. Он позволяет родительскому компоненту вызывать методы вложенного компонента. Пример: import { forwardRef, useImperativeHandle } from 'react';
const ChildComponent = forwardRef((props, ref) => {
useImperativeHandle(ref, () => ({
focus: () => {
inputRef.current.focus();
}
}));
const inputRef = useRef(null);
return (
<input type="text" ref={inputRef} />
);
});
export default ChildComponent;Мы экспортируем дочерний компонент
ChildComponent, имеющий метод focus. Мы используем хук useImperativeHandle, чтобы экспортировать этот метод через ref.👉 @sWebDev
👍6
5 ошибок начинающих разработчиков в React
В материале перечислены распространенные ошибки начинающих разработчиков React. Авторы советуют не использовать несколько элементов в корневом компоненте, избегать условных операторов в JSX и дают другие советы, которые помогут избежать распространенных ошибок при начале работы с библиотекой.
👉 @sWebDev
В материале перечислены распространенные ошибки начинающих разработчиков React. Авторы советуют не использовать несколько элементов в корневом компоненте, избегать условных операторов в JSX и дают другие советы, которые помогут избежать распространенных ошибок при начале работы с библиотекой.
👉 @sWebDev
👎5👍4
Media is too big
VIEW IN TELEGRAM
PixiJS
PixiJS часто используют в качестве игрового движка, но у библиотеки более широкое применение. Она упрощает вывод интерактивной 2D-графики и анимации в любых приложениях на базе HTML5. Для рендеринга PixiJS может использовать как WebGL, так и стандартный Canvas.
👉 @sWebDev
PixiJS часто используют в качестве игрового движка, но у библиотеки более широкое применение. Она упрощает вывод интерактивной 2D-графики и анимации в любых приложениях на базе HTML5. Для рендеринга PixiJS может использовать как WebGL, так и стандартный Canvas.
👉 @sWebDev
👍5
Media is too big
VIEW IN TELEGRAM
Three js - Interactive solar system
Анимированный проект солнечной системы, выполненный на Three.js.
👉 @sWebDev
Анимированный проект солнечной системы, выполненный на Three.js.
👉 @sWebDev
👍7
Angular. Работа с template-driven формами
Разработчики angular, как правило знают, что для работы с формами существует два подхода: reactive forms и template driven forms. Также, хорошо известно, что для работы с формами разработан такой функционал как валидация, однако исчерпывающе описано его применения для подхода reactive forms. Давайте рассмотрим как можно получить те же преимущества для template driven подхода.
👉 @sWebDev
Разработчики angular, как правило знают, что для работы с формами существует два подхода: reactive forms и template driven forms. Также, хорошо известно, что для работы с формами разработан такой функционал как валидация, однако исчерпывающе описано его применения для подхода reactive forms. Давайте рассмотрим как можно получить те же преимущества для template driven подхода.
👉 @sWebDev
👍7
Управление состоянием компонента в React
Можем ли мы в React управлять состоянием компонента, используя функцию-редьюсер?
👉 @sWebDev
Можем ли мы в React управлять состоянием компонента, используя функцию-редьюсер?
👉 @sWebDev
👍6
Возможно ли в React управлять состоянием компонента, используя функцию-редьюсер?
Anonymous Quiz
91%
Да
9%
Нет
🔥2
Media is too big
VIEW IN TELEGRAM
Voxelizing Three.js Geometries
Проект генератора геометрических фигур, выполненный с применением библиотеки Three.js.
👉 @sWebDev
Проект генератора геометрических фигур, выполненный с применением библиотеки Three.js.
👉 @sWebDev
👍5
Klona
Klona - это библиотека для создания копий JavaScript-объектов. Она поддерживает работу с обычными объектами, массивами, датами и другими структурами данных. Klona предоставляет дополнительные методы для взаимодействия с объектами. Например, клонирование с выбором глубины вложенности. Библиотека будет полезной для разработчиков, работающих с большими объемами данных и желающими повысить производительность своих приложений.
👉 @sWebDev
Klona - это библиотека для создания копий JavaScript-объектов. Она поддерживает работу с обычными объектами, массивами, датами и другими структурами данных. Klona предоставляет дополнительные методы для взаимодействия с объектами. Например, клонирование с выбором глубины вложенности. Библиотека будет полезной для разработчиков, работающих с большими объемами данных и желающими повысить производительность своих приложений.
👉 @sWebDev
👍5👎1
Декомпозиция и интерфейс vue-компонентов
В большом vue-приложении всегда есть необходимость в декомпозиции компонентов и их логики. В статье приводятся размышления и некоторые выводы относительно подходов к декомпозиции vue-компонентов и их интерфейсу.
👉 @sWebDev
В большом vue-приложении всегда есть необходимость в декомпозиции компонентов и их логики. В статье приводятся размышления и некоторые выводы относительно подходов к декомпозиции vue-компонентов и их интерфейсу.
👉 @sWebDev
👍4❤2
Оптимизируем производительность в React
Рассмотрим одну из новых фич Reacta - Automatic Batching. Батчинг является процессом оптимизации производительности в React, при котором несколько обновлений состояния и свойств компонентов объединяются в одно обновление перед рендерингом. Это позволяет уменьшить количество обновлений DOM и повысить производительность. Пример использования:
До React 18 батчинг также существовал, но автоматически работал только для обработчиков DOM событий.
👉 @sWebDev
Рассмотрим одну из новых фич Reacta - Automatic Batching. Батчинг является процессом оптимизации производительности в React, при котором несколько обновлений состояния и свойств компонентов объединяются в одно обновление перед рендерингом. Это позволяет уменьшить количество обновлений DOM и повысить производительность. Пример использования:
function MyComponent() {
const [count, setCount] = useState(0);
const handleClick = () => {
setCount(count + 1);
setCount(count + 1);
setCount(count + 1);
}
return (
<div>
<p>Count: {count}</p>
<button onClick={handleClick}>Increment</button>
</div>
);
}
При клике на Increment будет вызван три раза метод setCount, но благодаря batching'у обновления будут объединены в одно.До React 18 батчинг также существовал, но автоматически работал только для обработчиков DOM событий.
👉 @sWebDev
👍5👎4🔥1
Встраивание WebGL в HTML-страницу с помощью Three.JS
В статье рассмотрим совмещение WebGL‑анимации с прокруткой страницы HTML, используя библиотеку Three.js. Работа с ней во многом схожа с работой 3D‑редактора. Для получения результата в виде картинки или анимации необходимо создать сцену, поместить в нее камеру, создать примитив (геометрию или 3D‑модель), создать источник освещения и запустить процесс рендеринга.
👉 @sWebDev
В статье рассмотрим совмещение WebGL‑анимации с прокруткой страницы HTML, используя библиотеку Three.js. Работа с ней во многом схожа с работой 3D‑редактора. Для получения результата в виде картинки или анимации необходимо создать сцену, поместить в нее камеру, создать примитив (геометрию или 3D‑модель), создать источник освещения и запустить процесс рендеринга.
👉 @sWebDev
👍3
jsPDF
jsPDF - это библиотека для генерации PDF-документов на стороне клиента. Она позволяет создавать PDF-файлы из HTML-страниц, изображений и других типов контента, поддерживает множество настроек и опций для создания настраиваемых документов. JsPDF не требует установки дополнительного программного обеспечения и может быть использована в любом современном браузере.
👉 @sWebDev
jsPDF - это библиотека для генерации PDF-документов на стороне клиента. Она позволяет создавать PDF-файлы из HTML-страниц, изображений и других типов контента, поддерживает множество настроек и опций для создания настраиваемых документов. JsPDF не требует установки дополнительного программного обеспечения и может быть использована в любом современном браузере.
👉 @sWebDev
👍9