j-ListMenuEditable
Componente para menu editável
- Você pode alterar o CSS para suas necessidades.
Configuração:
iconremove {String}opcional, alterar o ícone do botãoremove. é um ícono fontawesome sem a parteti-(default:times)defaulticon {String}opcional, alterar o ícone do botãoedit(default:pencil-alt)addicon {String}opcional, irá alterar o ícone do botãoadd(default:plus-square)placeholder {String}opcional, um local para entrada (default:Write text and press ENTER)- Clase de
class {String}CSS para item selecionado (default:selected) title {String}opcional, adiciona o título no topo do menu de lista (importante se você quiser usaraddiconeaddclick)key {String}opcional, um valor padrão dekeyparatext(default:name)click {String}opcional, ação após clicar no item no menu.addclick {String}opcional, ação depois de clicar no botãoadd.Path to function() executa quando o usuário clique no íconeaddeditclick {String}opcional, ação após clicar no botãoedit.
Métodos:
component.add(object)- Esta função irá empurrar o objeto para o caminho (podendo ser nulo)component.edit(index)- A função permitirá editar o elementocomponent.remove(index)- A função irá remover o índice
Bom para saber:
Path must be arrecadação de objetos. depois de clicar em itens no menu
Apoia a avaliação dinâmica do conteúdo de <script type="text/html">. O exemplo abaixo contém um script com HTML e o componente avalia o conteúdo quando o componento é criado (apenas uma vez).
<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>Adicionar a classe custom:
var opt = {};
opt.items = [];
opt.push({ name: 'Total.js', classname: 'your_class_name' });Juntamente editável:
var opt = {};
opt.items = [];
opt.push({ name: 'Total.js', editable: true });Use-o com <ui-component name="listmenueditable">Quando o componente ainda não está carregado, jComponent Descarrega-o no primeiro uso do endereço DEF.fallback (a partir do Componentator CDN por padrão). autor: Denis Granec. fonte: o Componentator Reserva de componentes, licença 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>