Timeago.js
Timeago.js — это библиотека для динамического форматирования времени в стиле "3 минуты назад" или "2 часа назад". Она автоматически обновляет текстовую метку времени на основе текущего времени, что удобно для создания лент новостей, чатов и систем комментариев. Библиотека поддерживает множество языков и является легковесной, что делает её отличным выбором для любого веб-приложения.
👉 @sWebDev
Timeago.js — это библиотека для динамического форматирования времени в стиле "3 минуты назад" или "2 часа назад". Она автоматически обновляет текстовую метку времени на основе текущего времени, что удобно для создания лент новостей, чатов и систем комментариев. Библиотека поддерживает множество языков и является легковесной, что делает её отличным выбором для любого веб-приложения.
👉 @sWebDev
Использование NgClass в Angular
Как обычно передаются классы в директиву
Если забыли, то вернитесь к посту от07.10.2024 .
👉 @sWebDev
Как обычно передаются классы в директиву
NgClass
?Если забыли, то вернитесь к посту от
👉 @sWebDev
Как обычно передаются классы в директиву NgClass?
Anonymous Quiz
24%
В виде массива с именами классов.
50%
В виде объекта, где ключи — классы, а значения — условия.
15%
В виде строки с именами классов, разделенными запятой.
11%
Через функцию, возвращающую HTML-код.
Внедрение необязательных зависимостей в Angular
Декоратор
Пример:
В этом примере сервис
👉 @sWebDev
Декоратор
@Optional()
в Angular используется для указания того, что зависимость может быть необязательной. Если нужная зависимость отсутствует, Angular не выбросит ошибку, а просто передаст null
. Это полезно, когда сервис или зависимость может не всегда быть доступна в контексте компонента.Пример:
import { Component, Optional } from '@angular/core';
import { LoggingService } from './logging.service';
@Component({
selector: 'app-optional-demo',
template: `<p>Декоратор @Optional() пример</p>`
})
export class OptionalDemoComponent {
constructor(@Optional() private loggingService: LoggingService) {
if (this.loggingService) {
this.loggingService.log('Logging service is available');
} else {
console.log('Logging service is not available');
}
}
}
В этом примере сервис
LoggingService
внедряется как необязательный. Если он не зарегистрирован, вместо ошибки просто будет выведено сообщение о его отсутствии.👉 @sWebDev
Lory
Lory — это легковесная JavaScript-библиотека для создания слайдеров без зависимостей. Она предоставляет минимальный API для создания кастомных слайд-шоу с поддержкой жестов и событий прокрутки.
👉 @sWebDev
Lory — это легковесная JavaScript-библиотека для создания слайдеров без зависимостей. Она предоставляет минимальный API для создания кастомных слайд-шоу с поддержкой жестов и событий прокрутки.
👉 @sWebDev
Обработка Взаимодействий С Пользователем: Пять Основных Привязок Событий В Angular 18
Статья обсуждает ключевые события привязки в Angular 18, такие как
👉 @sWebDev
Статья обсуждает ключевые события привязки в Angular 18, такие как
click
, input
, blur
, change
, и submit
. В статье подробно описаны способы их использования для обработки взаимодействий пользователя с формами, полями ввода, кнопками и другими элементами интерфейса. 👉 @sWebDev
Wavesurfer.js
Wavesurfer.js — это библиотека JavaScript для визуализации аудиофайлов. Она предоставляет гибкий способ отображать аудиоволны в веб-приложениях, а также обеспечивает базовые возможности для воспроизведения, паузы, перемотки и изменения громкости звука. Библиотека поддерживает взаимодействие пользователя с аудиофайлами, позволяет визуализировать любые аудиоисточники (например, загруженные файлы или URL) и легко кастомизируется для различных целей.
👉 @sWebDev
Wavesurfer.js — это библиотека JavaScript для визуализации аудиофайлов. Она предоставляет гибкий способ отображать аудиоволны в веб-приложениях, а также обеспечивает базовые возможности для воспроизведения, паузы, перемотки и изменения громкости звука. Библиотека поддерживает взаимодействие пользователя с аудиофайлами, позволяет визуализировать любые аудиоисточники (например, загруженные файлы или URL) и легко кастомизируется для различных целей.
👉 @sWebDev
Работа с методом createPortal
Что делает метод
Если забыли, то вернитесь к посту от14.10.2024 .
👉 @sWebDev
Что делает метод
createPortal
в React?Если забыли, то вернитесь к посту от
👉 @sWebDev
Что делает метод createPortal в React?
Anonymous Quiz
12%
Рендерит компоненты внутри текущей DOM-иерархии.
78%
Рендерит компоненты вне текущей DOM-структуры.
4%
Изменяет состояние родительского компонента.
5%
Ускоряет загрузку компонентов.
Декоратор HostListener для работы с нестандартными пользовательскими событиями
В Angular декоратор
Пример:
👉 @sWebDev
В Angular декоратор
@HostListener
предоставляет удобный способ прослушивания событий, происходящих в DOM-элементах. Обычно он используется для стандартных событий, таких как клик, наведение мыши или прокрутка. Однако мало кто знает, что @HostListener
можно использовать для регистрации и обработки нестандартных событий, включая те, что определены разработчиком, или даже событий, происходящих за пределами стандартных браузерных API.Пример:
import { Component, HostListener } from '@angular/core';
@Component({
selector: 'app-custom-event-listener',
template: `<p>Нажмите Shift + K, чтобы сработало событие.</p>`
})
export class CustomEventListenerComponent {
@HostListener('window:keydown', ['$event'])
handleKeyDown(event: KeyboardEvent) {
if (event.shiftKey && event.key === 'k') {
console.log('Комбинация Shift + K нажата!');
// Здесь можно вызывать любые действия
}
}
}
👉 @sWebDev
Awesomplete
Awesomplete – это библиотека автозаполнения для полей ввода. Она предлагает гибкий и легковесный способ добавления автокомплита на сайты без зависимости от крупных библиотек, таких как jQuery.
👉 @sWebDev
Awesomplete – это библиотека автозаполнения для полей ввода. Она предлагает гибкий и легковесный способ добавления автокомплита на сайты без зависимости от крупных библиотек, таких как jQuery.
👉 @sWebDev