BlueprintEventBus Integration
Реализация событийной архитектуры
Модули в крупных приложениях часто становятся тесно связанными, что затрудняет внесение изменений и делает их подверженными ошибкам. Этот навык предоставляет паттерны и примеры кода для реализации BlueprintEventBus с целью обеспечения слабой связи через события.
下載技能 ZIP
在 Claude 中上傳
前往 設定 → 功能 → 技能 → 上傳技能
開啟並開始使用
測試它
正在使用「BlueprintEventBus Integration」。 Помогите опубликовать событие task.assigned, когда пользователь назначает задачу другому участнику команды.
預期結果:
- Введите полезную нагрузку события: { type: 'task.assigned', blueprintId, actor, data: { task, assignee, assigneeType } }
- Внедрите BlueprintEventBus и вызовите publish()
- Подписка запускает уведомления
- Метаданные события отслеживают историю назначений
安全審計
安全This is a documentation-only skill containing purely markdown content with TypeScript code examples. No executable code, scripts, network calls, file system access, or environment variable access is present. The skill provides guidance on implementing event-driven patterns and is safe for publication.
品質評分
你能建構什麼
Добавление событийных паттернов
Реализуйте BlueprintEventBus в Angular-сервисах для слабосвязанного взаимодействия модулей.
Стандартизация именования событий
Установите соглашения об именовании, например [модуль].[действие], между командами для согласованных структур событий.
Соединение интерфейса и серверной части
Используйте события для уведомлений и обновления интерфейса при завершении операций на сервере.
試試這些提示
Покажите, как внедрить BlueprintEventBus в Angular-сервис и опубликовать событие task.created с полями blueprintId и actor.
Напишите код Angular-компонента, который подписывается на события задач, но реагирует только на события определённого Blueprint, используя input() и takeUntilDestroyed().
Создайте AuditLogService, который подписывается на ВСЕ события глобально и записывает их в репозиторий с полными метаданными события.
Реализуйте TaskWorkflowService, который прослушивает события task.completed и автоматически обновляет зависимые задачи и уведомляет заинтересованных лиц.
最佳實務
- Всегда включайте blueprintId в события для обеспечения фильтрации по конкретному Blueprint
- Используйте takeUntilDestroyed() для предотвращения утечек памяти в компонентах
- Публикуйте события ПОСЛЕ успешных операций для поддержания согласованности
避免
- Не используйте EventBus для простого общения между родительским и дочерним компонентами; используйте @Output
- Избегайте круговых цепочек событий, вызывающих бесконечные циклы
- Не используйте события для синхронных паттернов запрос-ответ; используйте сервисы напрямую