Estoy usando Angular Material para mostrar contenido. Mi código TS es:
import { Component, OnInit, ViewChild } from '@angular/core';
import { AdminReassignTaskService } from 'src/app/services/admin-reassign-task.service'
import { Location } from '@angular/common';
import { trigger, state, transition, animate, style } from '@angular/animations';
@Component({
selector: 'app-admin-reassign-task',
templateUrl: './admin-reassign-task.component.html',
animations: [
trigger('detailExpand', [
state('collapsed', style({height: '0px', minHeight: '0', display: 'none'})),
state('expanded', style({height: '*'})),
transition('expanded <=> collapsed', animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
]),
],
styleUrls: ['./admin-reassign-task.component.scss']
})
export class AdminReassignTaskComponent implements OnInit {
reassignedlist;
columnsToDisplay = ['test'];
@ViewChild('expandedElement') expandedElement;
displayedColumns = ['comment'];
taskList;
constructor(private serv: AdminReassignTaskService,public _location: Location) { }
ngOnInit() {
this.serv.getByURL('admin/list').subscribe(response => {
this.reassignedlist=response;
})
}
editReassigned(i,element){
const result = [this.reassignedlist.find( ({ id }) => id === i )];
this.taskList=result;
this.expandedElement = this.expandedElement === element ? null : element ;
}
}
Y mi código HTML es
<div class="main-content-wraper">
<ng-container>
<div class="mat-elevation-z2 card rounded-0 p-3 d-flex flex-row flex-wrap" >
<table mat-table [dataSource]="reassignedlist" multiTemplateDataRows class="mat-elevation-z8 w-100 custom-table">
<ng-container matColumnDef="task_name">
<th mat-header-cell *matHeaderCellDef> Task Name </th>
<td mat-cell *matCellDef="let element"> {{element.taskName}} </td>
</ng-container>
<ng-container matColumnDef="action">
<th mat-header-cell *matHeaderCellDef> </th>
<td mat-cell *matCellDef="let element">
<button mat-icon-button matTooltip="View Task" (click)="editReassigned(element.id,element)" ><mat-icon >flag</mat-icon></button>
</td>
</ng-container>
<ng-container matColumnDef="expandedDetail">
<td mat-cell *matCellDef="let element" [attr.colspan]="columnsToDisplay.length">
<div class="example-element-detail" [@detailExpand]="element == expandedElement ? 'expanded' : 'collapsed'">
<table mat-table [dataSource]="taskList" class="task-card" >
<ng-container matColumnDef="comment">
<th mat-header-cell *matHeaderCellDef> Assigned User Comment</th>
<td mat-cell *matCellDef="let element" matTooltip="Assigned User Comment"> {{element.assignedUserCmt}} </td>
</ng-container>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
</div>
</td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="columnsToDisplay"></tr>
<tr mat-row *matRowDef="let element; columns: columnsToDisplay;"
class="example-element-row"
[class.example-expanded-row]="expandedElement === element" >
</tr>
<tr mat-row *matRowDef="let row; columns: ['expandedDetail']" class="example-detail-row"></tr>
</table>
</div>
</ng-container>
</div>
Con este código, la Tabla principal y el ICONO al hacer clic en la tabla principal La segunda tabla se expande y puedo ver los datos. Pero, 1) La segunda tabla no muestra el rumbo. ¿Cuál es la codificación incorrecta aquí? 2) Después de la tabla 2, quería agregar 4-5 campos de entrada de esta manera Expandir y contraer. ¿Cómo puedo AGREGAR sin mesa? 3) Aquí se adjunta la imagen (salida de la codificación actual). Por favor, avíseme si alguien tiene una respuesta con usted.
Creo que debe usar paneles de expansión como parte del acordeón de material angular:
https://stackblitz.com/angular/dnbkkoraexxa?file=src%2Fapp%2Fexpansion-overview-example.ts
Jana Duggar ha sido abierta sobre su búsqueda del amor. Aquí está todo lo que ha dicho sobre el tema y su ventana de cinco años para el matrimonio.
La estrella de 'Outlander', Sam Heughan, reveló recientemente qué se llevará del set para recordar a Jamie Fraser, el papel que lo convirtió en una estrella.
'She Loves You' fue escrita en una hora, grabada en un día y fue la canción de The Beatles con una de las mejores interpretaciones de su carrera.
Dolly Parton y su abuela Bessie tenían una relación especial. La abuela Parton estaba muy enferma, pero eso no impidió que Dolly le hiciera una broma.
Los orígenes del Islam se remontan a principios del siglo VII en la Península Arábiga. El Islam surgió en la ciudad de La Meca, donde un hombre llamado Mahoma, un próspero comerciante de una poderosa tribu, recibió una revelación divina.
Algunos monos tienen mucha suerte con la genética. ¿Otros? No tanto. El mono más feo no es una sola especie, sino toda una galería de primates que te hacen mirar dos veces y preguntarte si la evolución te estaba jugando una broma.
Puede que pienses que el roble o el nogal americano son maderas resistentes, pero cuando se trata de las maderas más duras del mundo, ni siquiera se acercan.
El océano rebosa belleza, pero también esconde algunas de las criaturas marinas más aterradoras del planeta. Muchos de estos animales acechan en las profundidades oceánicas, en el oscuro y opresivo mundo de alta presión del océano.
“Children” lanza un cameo de renombre y algunas noticias devastadoras
Se dice que este RAV4 está en excelentes condiciones y preparado para un juego de sillas musicales.
Imágenes de drones capturaron a los bomberos que parecían tener dificultades para apagar el incendio.
Eyes of Wakanda se vincula directamente con la MCU, además de actualizaciones sobre X-Men '97, What If..., Daredevil y más.
El veterano editor en jefe, que se unió a la revista American Vogue en 1988, anunció la noticia en una reunión de personal la mañana del jueves 26 de junio.
El papa Francisco, cabeza de la Iglesia católica y líder de los aproximadamente 1.300 millones de católicos del mundo, falleció a los 88 años.
El anillo de compromiso de Kate Middleton perteneció a la princesa Diana antes de que el príncipe William le propusiera matrimonio con él. Descubra todo lo que hay que saber sobre esta pieza histórica aquí.
John Cleese se casó con su esposa, Jennifer Wade, en 2012. Aquí encontrará todo lo que debe saber sobre la esposa de John Cleese, Jennifer Wade.
Me llama la atención De repente, como ocurre con tanta frecuencia Es el punto medio de nuevo <No, no el del Pacífico, tú, el del carnaval> Todos los titulares en voz alta...
En 2022, con el lanzamiento de GPT-3, la habilidad de escritura parece perder importancia. Con IA, las personas con mala escritura también pueden generar personal de calidad.
En el mundo acelerado y competitivo de hoy, la carrera de uno juega un papel importante en el crecimiento personal, la estabilidad financiera y la satisfacción general con la vida. Sin embargo, muchas personas se encuentran atrapadas en un ciclo implacable de estancamiento e insatisfacción, y su vida profesional se desvanece gradualmente.
La semana pasada noté un comunicado de prensa, enviado a través de PressGazette (un sitio web de noticias de los medios británicos). El artículo anunciaba que Acast, la empresa de publicidad y alojamiento de podcasts de Scandi, lideraría un consorcio de editores "probablemente los más influyentes" en podcasting.