applyFilters
Método responsável por realizar busca no serviço de dados podendo informar filtros e com o retorno, atualiza a tabela.
Caso não seja informado parâmetro, nada será adicionado ao GET.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
queryParams | { key: value } | Formato do objeto a ser enviado. Pode ser utilizada qualquer string como key, e qualquer string ou number como value. |
applyFilters(queryParams?: { [key: string]: QueryParamsType }) {
// Implementação do método que realiza a busca no serviço de dados com os filtros fornecidos.
// Caso não sejam fornecidos filtros, a busca será realizada sem adicionar parâmetros ao GET.
}
calculateHeightDynamically
Método que calcula o tamanho da grid baseado na porcentagem passada na propriedade t-height
. Caso sua grid esteja dentro de outro componente ou elemento que possa deixar a grid não vísivel será necessário chamar o método calculateHeightDynamically
para realizar o calculo de forma correta, por exemplo:
<po-tabs>
<po-tab (p-click)="emitClickTab()" p-label="PO Tabs">
<thf-grid #thfGrid> </thf-grid>
</po-tab>
</po-tabs>
@ViewChild('thfGrid') thfGrid: ThfGridComponent;
emitClickTab() {
//Time-out necessário para a renderização do DOM.
setTimeout(() => {
this.thfGrid.calculateHeightDynamically(true);
}, 100)
}
cleanRowActionsMode
Este método é utilizado para aplicar o estado default nas linhas editadas, incluídas e removidas no grid. Dependendo dos parâmetros, ele pode remover as linhas marcadas como deletadas, aplicar as edições e inclusões, e garantir que o modo de edição seja finalizado.
cleanRowActionsMode(edit = true, include = true, del = true) {
// Implementação do método
}
Exemplo de uso
Se você precisa aplicar o estado de todas as ações de linha, como edição, inclusão e remoção, basta chamar este método. Por exemplo, se houver uma ação de aplicar a grid ao salvar os dados, você pode usá-lo da seguinte forma:
// Após salvar os dados na API, você pode limpar todos os estados de ação de linha
this.myService.saveData(this.thfGrid.getChangedItems()).subscribe(() => {
this.thfGrid.cleanRowActionsMode(); // Limpa todas as ações de linha após salvar
console.log('Ações de linha limpas.');
});
deleteItems
Método responsável pela exclusão de itens selecionados.
Quando t-items
está definido, a remoção pode ser feita em lote, excluindo todas as linhas selecionadas localmente. Se utilizado com um serviço (t-service-api
e/ou t-service-delete-api
), a exclusão permitida é de um item por vez.
Caso utilizado com a "edição fluída offline via formulário (propriedade
t-grid-row-actions
)" remove localmente as linhas sinalizadas com$removed
.
selectRowItem
Método que seleciona o respectivo item no thf-grid.
Parâmetro
Nome | Tipo | Descrição |
---|---|---|
itemFn | { [key: string]: any } | ((item) => boolean) | Formato do objeto a ser enviado. Pode ser um objeto onde as chaves são strings e os valores podem ser de qualquer tipo (any). Ou pode ser uma função que recebe um parâmetro item e retorna um valor booleano (true ou false). |
selectRowItem(itemfn: { [key: string]: any } | ((item) => boolean)){}
removeItem
Método que remove um item do thf-grid.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
item | number | { [key: string]: any } | Índice da linha ou o item que será removido. |
removeItem(item: number | { [key: string]: any }) {
// Se for índice, será considerado o do array original (sem filtro).
// Ao remover o item, a linha que o representa será removida do thf-grid.
}
unselectRowItem
Método que desmarca o respectivo item no thf-grid.
Parâmetro
Nome | Tipo | Descrição |
---|---|---|
itemFn | { [key: string]: any } | ((item) => boolean) | Formato do objeto a ser enviado. Pode ser um objeto onde as chaves são strings e os valores podem ser de qualquer tipo (any). Ou pode ser uma função que recebe um parâmetro item e retorna um valor booleano (true ou false). |
unselectRowItem(itemfn: { [key: string]: any } | ((item) => boolean)){}
unselectRows
Método responsável por desmarcar as linhas que estão selecionadas.
unselectRows() {
// Implementação do método que desmarca as linhas que estão selecionadas.
}
updateItem
Método que atualiza uma linha da grid quando utilizado t-itens
.
Parâmetro
Nome | Tipo | Descrição |
---|---|---|
item | number | { [key: string]: any } | Index da linha ou objeto para identificar a linha da grid que será atualizada |
updatedItem | { [key: string]: any } | Objeto com as propriedades que serão atualizadas |
updateItem(item: number | { [key: string]: any }, updatedItem: { [key: string]: any }){
}
getChangedItems
Este método retorna uma lista dos itens que foram modificados no grid, adicionando uma propriedade op para indicar qual ação foi executada nos itens: remove, add, ou replace. Pode ser útil para enviar as modificações feitas na grid para uma API ou outro processamento.
getChangedItems() {
// Implementação do método
}
Exemplo de uso
Se sua grid permite edições, inclusões e remoções de itens, você pode utilizar o getChangedItems para obter uma lista com todas as mudanças realizadas pelo usuário. Essa lista incluirá quais itens foram removidos, adicionados ou editados, permitindo um gerenciamento mais fácil dessas alterações.
// Obtenção dos itens modificados da grid
const changedItems = this.thfGrid.getChangedItems();
console.log(changedItems);
// Saída esperada:
// [{ id: 1, name: 'Item 1', op: 'replace' }, { id: 2, name: 'Item 2', op: 'remove' }]
// Envio dos itens modificados para uma API, por exemplo
this.myService.saveChanges(changedItems).subscribe(() => {
console.log('Mudanças salvas com sucesso!');
});
getSelectedRows
Método responsável por retornar as linhas do thf-grid que estão selecionadas.
getSelectedRows() {
// Implementação do método que retorna as linhas selecionadas.
}