chrome:shell.skip

generated:catalog.entry.cdk-unique-id.title

generated:catalog.entry.cdk-unique-id.description

@xngui/cdk/unique-id
@xngui/cdk/unique-id

chrome:demo.section

chrome:demo.preview

cdk-preview:cdk-unique-id.field-wiring

cdk-preview:cdk-unique-id.we-never-share-your-email

input x-ng-field-8 · hint x-ng-hint-9

cdk-preview:cdk-unique-id.generated-ids

  • cdk-preview:cdk-unique-id.press-the-button-to-append-ids
demo-preview:hints.category.assistive:
TipSR
import { XUniqueId } from '@xngui/cdk/unique-id';
 
const uniqueId = inject(XUniqueId);
const fieldId = uniqueId.next('field');
const hintId = uniqueId.next('hint');
 
<x-form-field label="Email">
<x-input [controlId]="fieldId" [attr.aria-describedby]="hintId" >
<x-form-field>
<p [id]="hintId">We never share your email.<p>

chrome:demo.events.title

chrome:demo.events.empty