Estou trabalhando em uma tabela utilizando a bilioteca ng2-smart-table e estou com uma dificuldade em passar para um componente customizado os valores inseridos na linha de edição:
Veja o código abaixo, gostaria de passar para o componente SmartTableEditorFunctionsComponent os valores de Temperatura Máxima e Minima ao inserir uma nova linha na tabela.
temperaturaMaxima: {
type: 'number',
title: 'Temperatura Máxima',
},
temperaturaMinima: {
title: 'Temperatura Mínima',
type: 'number',
},
temperaturaMedia: {
title: 'Temperatura Média',
type: 'number',
editor: {
type: 'custom',
component: SmartTableEditorFunctionsComponent,
valuePrepareFunction(instance) {
instance.save.subscribe();
},
},
},
Imagem da tabela:
Criei um botão para tentar recuperar o valor, porem sem sucesso.
Código do componente:
export class SmartTableEditorFunctionsComponent extends DefaultEditor {
@Input() value: string | number;
@Input() rowData: any;
@Output() save: EventEmitter<any> = new EventEmitter();
constructor() {
super();
}
getPlaceholder(value: any) {
const id = value.column.temperaturaMaxima;
return id;
}
test() {
const id = this.rowData.temperaturaMaxima;
alert('TESTE' + id);
}
}
Código do template do componente:
{{ cell.newValue }}
<input
type="number"
[(ngModel)]="cell.newValue"
[name]="cell.getId()"
[placeholder]="cell.getTitle()"
[disabled]="!cell.isEditable()"
(click)="onClick.emit($event)"
/>
<button (click)="test()">Pega Valor</button>
Alguém poderia me ajudar?
Estou trabalhando em uma tabela utilizando a bilioteca ng2-smart-table e estou com uma dificuldade em passar para um componente customizado os valores inseridos na linha de edição:
Veja o código abaixo, gostaria de passar para o componente SmartTableEditorFunctionsComponent os valores de Temperatura Máxima e Minima ao inserir uma nova linha na tabela.
temperaturaMaxima: {
type: 'number',
title: 'Temperatura Máxima',
},
temperaturaMinima: {
title: 'Temperatura Mínima',
type: 'number',
},
temperaturaMedia: {
title: 'Temperatura Média',
type: 'number',
editor: {
type: 'custom',
component: SmartTableEditorFunctionsComponent,
valuePrepareFunction(instance) {
instance.save.subscribe();
},
},
},
Imagem da tabela:
Criei um botão para tentar recuperar o valor, porem sem sucesso.
Código do componente:
export class SmartTableEditorFunctionsComponent extends DefaultEditor {
@Input() value: string | number;
@Input() rowData: any;
@Output() save: EventEmitter<any> = new EventEmitter();
constructor() {
super();
}
getPlaceholder(value: any) {
const id = value.column.temperaturaMaxima;
return id;
}
test() {
const id = this.rowData.temperaturaMaxima;
alert('TESTE' + id);
}
}
Código do template do componente:
{{ cell.newValue }}
<input
type="number"
[(ngModel)]="cell.newValue"
[name]="cell.getId()"
[placeholder]="cell.getTitle()"
[disabled]="!cell.isEditable()"
(click)="onClick.emit($event)"
/>
<button (click)="test()">Pega Valor</button>
Alguém poderia me ajudar?