22. Dynamic Tabs and Wizards

The Problem

A wizard can create step screens dynamically, and a tab can load its content only when the tab is selected.

The Angular Difficulty

Angular tabs and wizard flows can be implemented with components and UI libraries, but dynamic screen ownership and lazy content are application composition concerns.

Angular Approach

<mat-tab-group>
    <mat-tab label="Customer">
        <app-customer-step />
    </mat-tab>
    <mat-tab label="Address">
        <app-address-step />
    </mat-tab>
</mat-tab-group>

MS Approach

ManySet provides a direct runtime-oriented approach for this recurring business-application task.

const wizard = await ms.inject("./Wizard", "content");
const customer = await ms.inject("./CustomerStep", wizard.step1);
const address = await ms.inject("./AddressStep", wizard.step2);

Why this way is useful in business applications :

The comparison is intended to show where ManySet supplies a business-application abstraction around a recurring task, while keeping HTML and JavaScript visible and directly usable.

Key Point :

ManySet reduces the amount of framework-specific composition required for this particular task, without requiring the React/Angular mechanism to be represented as inherently wrong or incapable.