Cómo pasar el valor del código mecanografiado a css en Angular 6
Dec 02 2020
Sé que debo usar ngClasso, ngStylepero no puedo averiguar cómo pasar ese valor. Aquí está mi código.
strip.component.ts
import { ... } from '@angular/core';
@Component({
selector: 'app-strip',
templateUrl: './strip.component.html'
})
export class StripComponent implements OnInit {
...
@Input() widthValue: any; // getting this from parent component
staticKpi:{...}=[][]
}
strip.component.html
<ng-container>
<div *ngFor="let row of staticKpi">
<div class="rows" *ngFor="let item of row">
<div class="col-12">
<h2>{{widthValue}}</h2> <!-- this is printing correct value-->
...
</div>
</div>
</div>
</ng-container>
Tengo que decidir el ancho de la clase de filas dinámicamente en scss algo como esto:
strip.component.css
.rows {
display: inline-block;
width: calc(100%/widthValue); // <----- here
text-align: left !important;
background: red;
}
Podría haberlo usado col-{{widthValue}}en HTML pero no, me han dicho que tiene que ser de la propiedad width de css. Por favor, ayúdame. No estoy seguro de cómo usar ngClass aquí.
Respuestas
1 Vishnudev Dec 02 2020 at 18:13
Utilizar class
<div [class]="'col-'+ widthValue"></div>
O
Utilizar style.width
<div [style.width]="(widthValue/12)*100 + '%'"></div>
MANIFESTACIÓN