smalljs$molПошук⌘ KДокументаціяПісочницяПорівнянняЕкосистемаПро проєктUK
ВидиGetting StartedВступМентальна модельПочаток роботиВід TypeScript до view.treeСтруктура проєктуІнструментарійEssentialsВстановленняВидиСтан і реактивністьМаршрутизаціяРендерингТестуванняДеплойРозв'язання проблемDataОтримання данихСхеми данихGiper BazaMoreВітринаЗ React, Vue та SvelteЗбірник рецептівAdvancedПлагіниМетадані модуляОфлайнПодання-привидиAboutЧасті питанняКомандаРелізиAPI$mol_button_major$mol_button_minor$mol_string$mol_number$mol_text$mol_paragraph$mol_list$mol_row$mol_link$mol_check$mol_switch$mol_select$mol_scroll$mol_page$mol_pick

Види

Вид — це компонент: вузол у дереві інтерфейсу з власною розміткою, поведінкою та стилями. Цей розділ описує, як види оголошуються, зв'язуються з логікою, компонуються та повторно використовуються.Якщо view.tree для вас новина: Від TypeScript до view.tree збирає один компонент двічі — рукописним класом і деревом — і показує код, у який дерево компілюється. Прочитайте спершу її, якщо синтаксис нижче виглядає новою мовою, а не скороченням.

Три файли, один компонент

Компонент $my_card живе в my/card/ й описується щонайбільше трьома файлами, кожен із чіткою роллю:card.view.treeчим є компонент: його структура та типові прив'язки.card.view.tsяк він поводиться: методи TypeScript, реактивний стан.card.view.css.ts — як він виглядає: типізовані стилі, які перевіряє компілятор.Тримати структуру, поведінку та стиль окремо — це навмисно: кожен файл лишається малим і читабельним, а розмітка ніколи не переплітається з логікою.Обов'язкового серед трьох немає жодного. Приберіть card.view.tree і напишіть клас просто в namespace $: структура стане звичайними методами, а компонент працюватиме далі. Далі в розділі використано дерево, бо саме так виглядає структура, коли обв'язку генерують за вас.

Мова view.tree

view.tree описує структуру декларативно. Відступ — це вкладення; закривальних тегів немає.1$my_card $mol_view2 sub /3 <= Title $mol_view4 sub / <= title \5 <= Body $mol_view6 sub / <= text \Кожне ім'я з великої літери (Title, Body) стає справжньою властивістю, до якої можна звернутися, яку можна перевизначити чи стилізувати. Кожна прив'язка з малої літери (title, text) стає значенням, яке можна обчислити в .view.ts.

Прив'язування властивостей

Два оператори з'єднують властивість із її джерелом:<= односторонньо: дочірній елемент читає значення від власника.<=> двосторонньо: значення тече в обидва боки — використовується для полів вводу.1$my_form $mol_view2 sub /3 <= Field $mol_string4 value? <=> text? \Тут value поля вводу та text власника автоматично лишаються синхронізованими: набираєте в полі — text оновлюється; задаєте text у коді — поле це відображає.

Зв'язування з поведінкою

Прив'язка без значення за замовчуванням реалізується в .view.ts. Клас розширює згенерований базовий клас із тим самим ім'ям:1namespace $.$$ {2 export class $my_card extends $.$my_card {3 @ $mol_mem4 title() {5 return 'Untitled'6 }7 }8}
Редагувати цю сторінку на GitHubЦе було корисно?ТакНіНазадВстановленняДаліСтан і реактивність
На цій сторінціТри файли, один компонентМова view.treeПрив'язування властивостейЗв'язування з поведінкоюАтрибути та тип елементаСписки та види з ключамиУмовні видиКомпозиція та повторне використанняДалі
Type to search the documentation.