uno-mvux-messaging

Synchronize MVUX state changes across views via EntityMessage and ListState observation.

9|1|Updated Dec 10, 2024
One-click install
npx skills add https://github.com/unoplatform/studio --skill uno-mvux-messaging
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: uno-mvux-messaging
Source: https://github.com/unoplatform/studio/tree/main/plugins/uno-platform-studio/skills/uno-mvux-messaging
Command: npx skills add https://github.com/unoplatform/studio --skill uno-mvux-messaging

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

MVUX messaging enables consistent synchronization of MVUX state changes across multiple views by broadcasting changes through a central messenger and allowing models to react automatically.

Core Features & Use Cases

  • Service publishes EntityMessage<T> when changes occur to a shared entity.
  • Models observe the messenger on ListState to automatically apply incoming updates.
  • Use Case: keep details, list, and dashboard views in sync when a shared entity changes, across components and pages.

Quick Start

Broadcast an EntityMessage<T> from a service and have ListState.observe(messenger) apply changes to all bound views.

Frequently Asked Questions about uno-mvux-messaging

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I synchronize state changes across multiple views in .NET MVUX?

To synchronize state changes across multiple views in MVUX, services broadcast EntityMessage<T> updates through a central IMessenger, which ListState observes to automatically apply incoming changes to all bound views.

How does ListState observation work with WeakReferenceMessenger for entity updates?

ListState observation with WeakReferenceMessenger works by having models observe the messenger for EntityMessage<T> broadcasts, automatically routing changes to maintain key matching for affected entities across decoupled services.

When do I need entity messaging for MVUX state synchronization?

You need entity messaging for MVUX state synchronization when CRUD operations affect multiple views, requiring decoupled services to propagate updates and keep details, list, and dashboard views consistent across components and pages.

What is the best way to keep list and dashboard views in sync when a shared entity changes?

The best way to keep views in sync when a shared entity changes is broadcasting an EntityMessage<T> from a service and using ListState.observe on the messenger to automatically apply changes to all bound views.

Do I need WeakReferenceMessenger to route MVUX state changes across components?

Yes, you need WeakReferenceMessenger as the IMessenger implementation to route MVUX state changes, broadcast EntityMessage<T> updates, and maintain key matching for affected entities across decoupled services and pages.