j-ListMenuEditable
Komponent pre ponuku editovateľného zoznamu
- CSS môžete zmeniť pre svoje potreby.
Konfigurácia:
iconremove {String}voliteľné, zmeniť ikonu tlačidlaremove. Je to úžasná ikona bez častiti-(predvolené:times)defaulticon {String}voliteľné, zmeňte ikonu tlačidlaedit(predvolené:pencil-alt)addicon {String}voliteľné, zmení ikonu tlačidlaadd(predvolené:plus-square)placeholder {String}voliteľné, zástupný symbol pre vstup (predvolené:Write text and press ENTER)class {String}Trieda CSS pre vybratú položku (predvolené:selected)title {String}voliteľné, pridá názov na začiatok ponuky zoznamu (dôležité, ak chcete použiťaddiconaaddclick)key {String}voliteľné, predvolená hodnotakeypre hodnotutext(predvolená:name)click {String}voliteľné, akcia po kliknutí na položku v menu. Cesta k funkcii (prvku, indexu)addclick {String}voliteľné, akcia po kliknutí na tlačidloadd. Cesta k funkcii () sa spustí, keď používateľ klikne na ikonuaddeditclick {String}voliteľné, akcia po kliknutí na tlačidloedit. Cesta k funkcii (prvku, indexu)
Metódy:
component.add(object)- Táto funkcia vloží objekt do cesty (môže byť nulová)component.edit(index)- Funkcia umožní editáciu prvkucomponent.remove(index)- Funkcia odstráni index
Je dobré vedieť:
Cesta musí byť pole objektov. Po kliknutí na položku v menu
Podporuje dynamické vyhodnotenie obsahu <script type="text/html">. Nižšie uvedený príklad obsahuje skript s HTML a komponent vyhodnocuje obsah pri vytváraní komponentu (iba raz).
<ui-component name="listmenueditable" path="tags">
<script type="text/html">
{{ if mycolor }}
<i class="ti ti-circle" style="color: {{ mycolor }}"></i>
{{ fi }}
{{ name }}
</script>
</ui-component>Pridanie vlastnej triedy:
var opt = {};
opt.items = [];
opt.push({ name: 'Total.js', classname: 'your_class_name' });Prepnúť upraviteľné:
var opt = {};
opt.items = [];
opt.push({ name: 'Total.js', editable: true });Použite ho so <ui-component name="listmenueditable">. Keď komponent ešte nie je načítaný, jComponent ho stiahne pri prvom použití z adresy v DEF.fallback (predvolene CDN Componentator). Autor: Denis Granec. Zdroj: úložisko komponentov Componentator, licencia MIT.
<!-- EXAMPLE DEPENDENCIES -->
<ui-component name="menu"></ui-component>
<div style="width: 400px;">
<ui-component name="listmenueditable" path="tags" config="title:All tags;editclick:edit;addclick:add;click:click">
<script type="text/html">
{{ if mycolor }}
<i class="ti ti-circle-alt" style="color: {{ mycolor }}"></i>
{{ fi }}
{{ name }}
</script>
</ui-component>
</div>
<script>
var tags = [{ name: 'Tag 1', mycolor: '#00B9D7', editable: true, classname: 'customclass', mycustomdata: 'ola' }, { name: 'Tag 2', mycolor: '#00A06E', editable: true, mycustomdata: 'ola2' }];
function click(el, item, index) {
console.log('clicked index', index, 'item', item);
}
function edit(el, index, icon) {
var opt = {};
opt.items = [{ name: 'Edit', id: 'edit' }, { name: 'Remove', icon: 'trash', id: 'remove' }];
opt.align = 'center';
opt.element = icon;
opt.callback = function(selected) {
switch (selected.id) {
case 'edit':
SETTER('listmenueditable/edit', index);
break;
case 'remove':
SETTER('listmenueditable/remove', index);
break;
}
};
SETTER('menu/show', opt);
}
function add() {
SETTER('listmenueditable/add', { name: 'New tag', mycolor: '#8e44ad', editable: true });
}
</script>