2017-05-24 43 views
6

Mam obecnie problemy z uzyskaniem danych ngx-datatable, aby uzyskać prawidłowe css. Mam to w moim pliku css, aby zaimportować właściwe css.Wydanie CSS Ngx-table angular2 swimlane

@import '@swimlane/ngx-datatable/release/index.css'; 
@import '@swimlane/ngx-datatable/release/themes/material.css'; 
@import '@swimlane/ngx-datatable/release/assets/icons.css'; 

Wygląda na to, że robi się tylko połowę tego, co należy zrobić. To jest sekcja mojego html wywołującego bibliotekę.

<ngx-datatable class="material striped" 
    class="material" 
    [rows]="rows" 
    [columns]="columns" 
    [columnMode]="'force'" 
    [headerHeight]="50" 
    [footerHeight]="50" 
    [rowHeight]="100"> 
    </ngx-datatable> 

Jeśli ktoś ma pojęcie, dlaczego tak się dzieje, byłby bardzo pomocny.

@amcdnl jakieś wskazówki, przepraszam za przeszkadza Ci, jeśli czytasz ten

Odpowiedz

16

Przypuszczam, że ma do czynienia z widokiem na hermetyzacji. Zasadniczo twoje css będzie miało zasięg z atrybutem jak [_ngcontent-c5], ponieważ elementy wewnątrz twojego szablonu automatycznie to będą miały.

Jednak elementy dodane do domu według datatables prawdopodobnie nie mają tego atrybutu powodującego, że style nic nie robią.

można naprawić dodając enkapsulacji opcję: ViewEncapsulation.None do komponentu tak:

import { ViewEncapsulation } from '@angular/core'; 
@Component({ 
    [...] // other code like template and style urls 
    encapsulation: ViewEncapsulation.None 
}) 
+3

To działało jak urok! Dziękuję bardzo! Głowa dla każdego, kto nie zna się tak jak ja, pamiętaj o zaimportowaniu {ViewEncapsulation} z '@ angle/core' –

+0

Dzięki! To działało świetnie. –

+0

Zmarłem cały dzień z powodu tego problemu ... Jesteś zbawicielem! –