j-Properties
Komponenta používá komponenty j-DatePicker, j-TimePicker, j-Directory, j-Emoji, j-ColorPicker a j-FaIcons.
Konfigurace:
dateformat{String} datum formát (předvolený:yyyy-MM-dd)timeformat{String} časový formát (předvolený:HH:mm)datetimeformat{String} datum/časový formát (předvolený:yyyy-MM-dd HH:mm)height{Číslo} výška prvku (předvolený:undefined)parent{String} jQuery selektor pro automatické nastavení výšky (může býtwindow,parentnebocustom)margin{Číslo} vertikální marže (přesněji řečeno:0)change{String} je cesta k metodumethod(item, replace_text(new_text))(vyplynul, pokud se některá hodnota mění) a argumentreplace_textje volitelnýscrollbar{Boolean} umožňuje scrollbar (předvolené:true)visibleY{Boolean} zobrazuje skříňku (předvolené:true)
Data prohlášení:
var form = [];
form.push({ group: 'Personal', label: 'First name', name: 'user.firstname', type: 'string', value: 'Peter', transform: 'capitalize' });
form.push({ group: 'Personal', label: 'Last name', name: 'user.lastname', type: 'string', value: 'Širka', placeholder: 'String' });
form.push({ group: 'Personal', label: 'Age', name: 'user.age', type: 'number', value: 33, min: 30 });
form.push({ group: 'Personal', label: 'Birth date', name: 'user.birth', type: 'date', value: NOW });
form.push({ group: 'Additional', label: 'Newsletter', name: 'user.newsletter', type: 'bool', value: true });
form.push({ group: 'Additional', label: 'City', name: 'user.city', type: 'list', value: 2, items: 'items', dirsearch: 'Search city', dircustom: true });
form.push({ group: 'Additional', label: 'Color', name: 'user.color', type: 'color', value: '#e73323' });
form.push({ group: 'Additional', label: 'Icon', name: 'user.icon', type: 'fontawesome', value: 'ti ti-home' });
form.push({ group: 'Additional', label: 'Emoji', name: 'user.emoji', type: 'emoji', value: '', show: 'n => n.age === 33' });Údaje o vlastnostech v prohlášení:
name{String} identifikátor položky (vyžaduje se)label{String} označení (potřebné)group{String} jméno skupiny (vyžaduje se)type{String} typ (potřebný)placeholder{String} jeden držitel místa (podporuje jen několik typů)transform{String} pro typstringmůže obsahovat pouzecapitalize,uppercase,lowercaseneboslugmaxlength{Číslo} pro typstringpouzevalidate{RegExp/String} pro typstringmůže obsahovat pouzeemail,phonenebourlmin{Číslo} pro typnumberpouzemax{Číslo} pro typnumberpouzeinc{Číslo/String} zvyšuje hodnotu podle hodnoty, která je zaměřena nanumbernebodate(Může obsahovat1 daynebo-1 dayTyp pouzerequired{Boolean} pro typstring,numbernebodatedirsearch{String/Boolean} místo držitele pro typlistpouze, boolean znemožňuje vyhledávánídircustom{Boolean} umožňuje nastavenou hodnotu pouze pro typlistdirkey{String} klíčové jméno pro štítek/jméno, cílené pouze na typlist(předvolené:name)dirvalue{String} klíčové jméno pro hodnotu, určené pouze pro typlist(předvolené:id)detail{String} adresa URL pro získání údajů prolistTyp a příklad:/users/{0}/a{0}Změní se hodnotou ze seznamu.items{Object Array/String} položky pro typlistpouze, řádek může obsahovat cestu doArrayneboURL addresshledatshow{Arrow funkce}, příklad:data => data.KEY === 'SOMETHING'--> zobrazí položku, zda bude podmínka platná
Povolené typy v údajích:
stringboolnumberdatelistcoloremojifontawesome
Chybí typy:
datetimetimefilemonths
Trvalá móda
<ui-component name="properties" path="form" config="parent:window">
<script type="text/html">
[
{ group: 'Personal', label: 'First name', name: 'firstname', type: 'string', transform: 'capitalize' },
{ group: 'Personal', label: 'Last name', name: 'lastname', type: 'string', placeholder: 'String' },
...
...
...
{ group: 'Additional', label: 'Emoji', name: 'emoji', type: 'emoji', show: 'n => n.age === 33' }
]
</script>
</ui-component>
<script>
var form = { firstname: 'John', lastname: 'Connor' };
</script>Dobré vědět
Komponenta rozšiřuje Array přidáním:
invalid{Boolean} pole určuje, zda jevalueneplatné (předvolené:undefined)changed{Boolean} pole určuje, zda byl změněnvalue(předvolený:undefined)prev{???} pole obsahuje počáteční hodnotu
Použijte ji s <ui-component name="properties">Pokud je součástka ještě nezačleněna, jComponent Stáhnout ji na první použití z adresy DEF.fallback a) The Componentator CDN dle předvolby. autor: Peter Širka. zdroj: Componentator Výrobce je autorizován, MIT licence.
<ui-component name="LAZY directory"></ui-component>
<ui-component name="LAZY colorpicker"></ui-component>
<ui-component name="LAZY faicons"></ui-component>
<ui-component name="LAZY datepicker"></ui-component>
<ui-component name="LAZY timepicker"></ui-component>
<ui-component name="LAZY emoji"></ui-component>
<div style="width:400px;float:right">
<ui-component name="properties" path="form" config="parent:window"></ui-component>
</div>
<script>
var items = [{ id: 2, name: 'Banská Bystrica' }, { id: 3, name: 'Bratislava' }];
var form = [];
form.push({ group: 'Personal', label: 'First name', name: 'firstname', type: 'string', value: 'Peter', transform: 'capitalize' });
form.push({ group: 'Personal', label: 'Last name', name: 'lastname', type: 'string', value: 'Širka', placeholder: 'String' });
form.push({ group: 'Personal', label: 'Age', name: 'age', type: 'number', value: 33, min: 30 });
form.push({ group: 'Personal', label: 'Birth date', name: 'birth', type: 'date', value: NOW });
form.push({ group: 'Additional', label: 'Newsletter', name: 'newsletter', type: 'bool', value: true });
form.push({ group: 'Additional', label: 'City', name: 'city', type: 'list', value: 2, items: 'items', dirsearch: 'Search city', dircustom: true });
form.push({ group: 'Additional', label: 'Color', name: 'color', type: 'color', value: '#e73323' });
form.push({ group: 'Additional', label: 'Icon', name: 'icon', type: 'fontawesome', value: 'ti ti-home' });
form.push({ group: 'Additional', label: 'Emoji', name: 'emoji', type: 'emoji', value: '', show: 'n => n.age === 33' });
</script>