Teagasc Angular
Comhpháirteanna neamhspleácha Angular 20 — ionchuir chomhartha, brath athruithe OnPush, teimpléid inlíne, nialas NgModules, nialas CSS.
An rud a thógfaidh tú
Foirm theagmhála bheag — réimse le lipéad, cnaipe cur isteach, ceangal dhá-bhealach, fíor-iompar méarchláir agus léitheora scáileáin — nocht ar dtús, ansin stíl-chóirithe, i thart ar 10 nóiméad.
Sula dtosaíonn tú
Tá git, Node 22 nó níos nuaí, agus pnpm 10 nó níos nuaí ag teastáil uait. Oibríonn aon tionscadal Angular 20 — Angular CLI nó Analog.
Céim 1 — Faigh an cód
git clone https://github.com/LilyDesignSystem/lily-design-system
cd lily-design-system/lily-design-system-angular-headless
pnpm install
pnpm test # vitest + TestBed, all 571 components
pnpm run build-storybook
Is comhaid chothroma iad na comhpháirteanna i components/ —
Button.ts, TextInput.ts — is comhpháirt neamhspleách é gach ceann le teimpléad inlíne, móide a spec agus a scéal. Athéascraíonn an barrel
index.ts gach comhpháirt; pnpm build
táirgeann sé beart Angular Package Format trí ng-packagr.
Céim 2 — Do chéad chomhpháirt
import { Component } from "@angular/core";
import { Button } from "@lilydesignsystem/angular-headless";
@Component({
selector: "app-save-bar",
standalone: true,
imports: [Button],
template: `<lily-button (click)="save()">Save</lily-button>`,
})
export class SaveBar {
save() { console.log("saved"); }
}
Dearbhaíonn gach comhpháirt roghnóir lily-* agus rindreálann sí an eilimint shéimeantach lena crúca aicme —
<button class="button" type="button"> anseo. Tá na hionchuir bunaithe ar chomharthaí: label() le haghaidh aria-label
chun sárú, className() chun aicmí a chur leis.
Céim 3 — Cuir foirm bheag le chéile
import { Component, signal } from "@angular/core";
import { Form, Field, TextInput, Button } from "@lilydesignsystem/angular-headless";
@Component({
selector: "app-contact-form",
standalone: true,
imports: [Form, Field, TextInput, Button],
template: `
<lily-form label="Contact form" (submit)="handleSubmit($event)">
<lily-field label="Full name" [required]="true">
<lily-text-input id="name" label="Full name" [(value)]="name" />
</lily-field>
<lily-button type="submit">Save</lily-button>
</lily-form>
`,
})
export class ContactForm {
name = signal("");
}
lily-field glacann sé leis an lipéad infheicthe mar
label ionchur dá chuid féin in ionad comhpháirt lipéid neadaithe — pas é uair amháin, ar an réimse, agus soláthraíonn an lily-text-inputcomhfhreagrach ó
label an t-ainm inrochtana. Nochtann comhpháirteanna cosúil le hionchuir luachanna model() mar sin oibríonn ceangal dhá-bhealach banana-box [(value)]
láithreach — comhoiriúnach le zoneless ar fad.
Fíoraithe 2026-08-29: chuir dréacht roimhe sin comhpháirt Label ar leith taobh istigh de lily-field, rud a rindreáil dhá lipéad (ceann amháin folamh) mar go rindreálann
lily-field a cheann féin cheana ón ionchur
label — faighte trí chód foinse na comhpháirte a sheiceáil.
An bealach comhshuite foirm teagmhála
an patrún céanna, tástáilte le fíor-thástálacha e2e agus axe.
Seiceáil d'obair: rith an app agus tá an fhoirm le feiceáil nocht — go díreach mar a bhí beartaithe: tá an stíliú fós le teacht. Brúigh Tab: gluaiseann an fócas trí gach rialú, fógraítear an lipéad agus oibríonn an cur isteach. Tá an t-iompar déanta; is leatsa an cuma agus is é an chéad chéim eile é.
Céim 4 — Stíligh é
Stíligh na crúcaí aicme — .button, .text-input,
.label, .field — in styles.css, nó cuir téama réamhdhéanta leis an eagar styles in
angular.json / nasc é in index.html:
<link rel="stylesheet" href="/themes/adobe-spectrum.css" />
Céim 5 — Féach air ag obair ar fad
App samplach Angular + Analog taispeánann sé an catalóg iomlán le ródú bunaithe ar chomhaid agus Vite:
git clone https://github.com/LilyDesignSystem/lily-design-system
cd lily-design-system/lily-design-system-angular-examples
pnpm install && pnpm run dev
Na chéad chéimeanna eile
- Téamaí — malartú ag am rite leis an gcúntóir theme-picker d'Angular.
- Cúntóirí sainroghanna — teanga agus méid téacs.
- Catalóg na gcomhpháirteanna — airíonna, ARIA agus méarchlár in aghaidh na comhpháirte.
Ceisteanna ar an mbealach? Tá an leathanach cabhrach lán de fhreagraí — agus más féidir céim a dhéanamh níos soiléire, inis dúinn agus déanfaimid an teagasc a fheabhsú go sásta.