2017-05-24 15 views
6

Tôi hiện đang gặp sự cố khi nhận được dữ liệu ngx-datatable để có css thích hợp. Tôi có điều này trong tập tin css của tôi để nhập khẩu css thích hợp.Vấn đề về 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'; 

Có vẻ như chỉ đang làm một nửa trong số những gì bạn cho là làm. Đây là phần html của tôi gọi khi thư viện.

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

Nếu có ai biết tại sao điều này lại thực sự hữu ích.

@amcdnl bất kỳ manh mối, xin lỗi vì làm phiền bạn nếu bạn đọc này

Trả lời

16

tôi giả sử nó đã làm với cái nhìn đóng gói. Về cơ bản css của bạn sẽ được scoped với một thuộc tính như [_ngcontent-c5], bởi vì các phần tử bên trong template của bạn sẽ tự động có nó.

Tuy nhiên các mục được thêm vào dom bởi datatables có thể không có thuộc tính đó khiến cho các kiểu không làm gì cả.

Bạn có thể khắc phục điều đó bằng cách thêm tùy chọn đóng gói: ViewEncapsulation.None đến thành phần của bạn như sau:

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

đó đã làm việc như một nét duyên dáng! Cảm ơn bạn rất nhiều! Thủ trưởng cho bất cứ ai khác mà không biết nhiều như tôi nhớ để nhập khẩu {ViewEncapsulation} từ '@ góc/lõi' –

+0

Cảm ơn! Nó hoạt động rất tốt. –

+0

Tôi lãng phí cả ngày vì vấn đề này ... Bạn là một vị cứu tinh! –

Các vấn đề liên quan