Orbito - Dokumentacja modułówOrbito - Dokumentacja modułów
Wprowadzenie
Pierwsze kroki
API
Komunikacja
Widoki
Wdrożenie
Społeczność
For AI agents
Wprowadzenie
Pierwsze kroki
API
Komunikacja
Widoki
Wdrożenie
Społeczność
For AI agents
  • OrbitoViewEngine

    • Wprowadzenie
    • BaseView – Klasa bazowa
    • Zmienne (VarStore)
    • Listy i notacja .$
    • Szablony Handlebars
    • Akcje (ActionHandler)
    • Tabele danych
    • Edycja danych
    • Kontrolki wartości
    • Warianty stylistyczne
    • Komponenty i sloty
    • Pliki, kamera i schemat z serwera
  • Widoki

    • AvatarView
    • BadgeView
    • ButtonView
    • CameraView
    • CardView
    • CheckboxGroupView
    • CheckboxView
    • ComponentView
    • CssBoxView
    • DataTableView
    • DropdownView
    • DynamicListView
    • DynamicView
    • FilePickerView
    • FilePreviewView
    • FlexView
    • GridView
    • HtmlView
    • InlineEditView
    • InputView
    • ListView
    • ModalView
    • PopoverView
    • RadioGroupView
    • RowView
    • SelectView
    • SliderView
    • SlotView
    • StepperView
    • TabsView
    • TextInputView
    • TextView

Szablony Handlebars

Widoki, w których podaje się właściwość template, korzystają z biblioteki Handlebars do renderowania szablonów. Dane przekazane do widoku są dostępne wewnątrz szablonu za pomocą standardowej składni Handlebars {{zmienna}}.

Znacznik [template]

W dokumentacji widoków parametry oznaczone [template] obsługują parsowanie Handlebars — możesz w nich używać wyrażeń {{ zmienna }} oraz wszystkich helperów opisanych poniżej.

Przykład: pole label w ButtonView oznaczone [template] pozwala na:

type: button
label: "Witaj, {{ $global.username }}!"

Parametry bez tego znacznika są używane jako plain string — wyrażenia {{ }} nie zostaną przetworzone.

W widokach listowych masz też do dyspozycji notację .$, która wskazuje bieżący element kolekcji (np. {{ ordersTable.$._id }}). Opisuje ją osobny rozdział: Listy i notacja .$.


Dostępne helpery

formatDate

Formatuje datę za pomocą biblioteki moment.js.

Składnia:

{{formatDate date}}
{{formatDate date "format"}}
ParametrWymaganyOpis
dateTakData do sformatowania (string, timestamp, obiekt Date)
formatNieFormat daty wg moment.js (domyślnie DD.MM.YYYY)

Przykłady:

{{formatDate created_at}}                    {{!-- → 16.02.2026 --}}
{{formatDate created_at "YYYY-MM-DD"}}       {{!-- → 2026-02-16 --}}
{{formatDate created_at "DD/MM/YYYY HH:mm"}} {{!-- → 16/02/2026 14:30 --}}

ifEquals

Helper blokowy — renderuje zawartość, gdy oba argumenty są sobie równe (porównanie luźne, "23" == 23). Sekcja {{else}} jest opcjonalna.

{{#ifEquals status "paid"}}Zapłacone{{else}}Do zapłaty{{/ifEquals}}

Arytmetyka: add, sub, mul, div, round, sum

Helpery liczbowe zwracają wartość (nie są blokowe), więc można je zagnieżdżać w podwyrażeniach: {{ round (mul qty price) 2 }}.

Argumenty są konwertowane na liczby — string "12.5" z kontrolki albo z templatki zadziała tak samo jak liczba, a wartość nieliczbowa (pusta, tekst) liczy się jako 0.

HelperSkładniaWynik
add{{ add a b }}suma
sub{{ sub a b }}różnica
mul{{ mul a b }}iloczyn
div{{ div a b }}iloraz (dzielenie przez zero daje 0)
round{{ round x }} / {{ round x 2 }}zaokrąglenie do n miejsc (domyślnie 0)
sum{{ sum tablica }} / {{ sum tablica "pole" }}suma elementów albo wskazanego pola
{{ round (mul docItems.$.qty docItems.$.unitNetPrice) 2 }}   {{!-- wartość wiersza --}}
{{ sum docItems "netValue" }}                                {{!-- suma kolumny --}}

Porównania: gt, gte, lt, lte, eq, ne

Zwracają true / false, więc używa się ich w podwyrażeniu {{#if ...}}:

{{#if (gte qty 1)}}dostępne{{else}}brak{{/if}}
{{#if (eq vat "zw")}}zwolniony{{/if}}

gt, gte, lt i lte porównują liczbowo (stringi liczbowe też), a eq i ne luźno (==) — Handlebars i kontrolki formularza zwracają wartości jako tekst.

money

Formatuje liczbę jako kwotę w formacie polskim (Intl.NumberFormat('pl-PL')), zawsze z dwoma miejscami po przecinku. Nie dokleja waluty — symbol albo kod dopisz w treści.

{{ money 12345.5 }}                    {{!-- → 12 345,50 --}}
{{ money (sum docItems "netValue") }} zł

Nazwa helpera przesłania zmienną o tej samej nazwie — unikaj kluczy add, sum, round, money itp. jako nazw zmiennych i pól.

Ostatnio zaktualizowano:: 16.09.2026, 10:04
Contributors: Wiktor Koźmiński, Claude Fable 5.1
Prev
Listy i notacja .$
Next
Akcje (ActionHandler)