Как реализовать Command паттерн в Node.js?

Middle
251 просмотров
AFK Offer AI

Command инкапсулирует запрос как объект. interface Command { execute(): Promise; undo?(): Promise }. class CreateUserCommand implements Command { constructor(private readonly data: CreateUserDto, private readonly repo: UserRepo) {} async execute() { await this.repo.create(this.data) } }. CommandBus: map команды к handlers. Преимущества: undo/redo, queue commands, logging, transaction management. В CQRS: Command отделён от Query. NestJS CQRS: @CommandHandler(CreateUserCommand). Паттерн особенно полезен для undo операций (undo в редакторах) и транзакционных скриптов.

Следующий вопрос

Что полезного есть в модуле util в Node.js?