2013-08-16 20 views
12

Biz Açısal UI ng-ızgara kullanmak istiyorum, ama auto taşması ayarlanmamış ve kaydırma için ızgara içinde görünüm anlatmak için bir seçenek bulmak için görünmüyor olabilir. Yapmamız istiyoruz neTurronff Köşeli UI ng-ızgara içinde kaydırma?

tablo/ızgara yüksekliği bizim ızgara satır sayısı büyüklüğü kapalı tabanlı dinamik olmak zorunda olduğunu. Sabit bir maksimum satır sayısına sahibiz, bu nedenle DOM'da çok fazla satır bulunmasıyla ilgili çok az endişe var.

nereye herhangi bir öneriniz?

cevap

8

kullanılan Verileriniz sonra ng-grid başlatmak için. satırları içeren div ait height ağır basan deneyebilirsiniz, böylece satırlar kabı taşma yok, senin BB'de

<div ui-if="dataForGrid.length>0" ng-grid="gridOptions" ng-style="getTableStyle()" /> 

$scope.getTableStyle= function() { 
    var rowHeight=30; 
    var headerHeight=45; 
    return { 
     height: ($scope.dataForGrid.length * rowHeight + headerHeight) + "px" 
    }; 
}; 
+1

söz aynı şeyi görmek yazdım: ng-style = "height: {{formData.watchCountData.length * 30}} px"> ama çalışmıyor :( – Dejell

5

evet böyle tesis sunan bir eklenti var onun ng-grid-flexible-height.js

için plunker görebilirsiniz nasıl onun Geçenlerde aynı sorunlarla karşılaştıysanız ve https://groups.google.com/forum/#!topic/angular/KiBXP3eKCDY

istiyorsun bir çözüm buldu

+0

Vinod - Teşekkür ederim, ama plunker ı isteyerek ne ele almaz. Kılavuzun satır sayısına bağlı olarak yüksekliğini ayarlamasını istiyorum. Sonunda ızgarada herhangi bir kaydırma çubuğu istemiyorum. Bunun yerine tüm belge kaydırma çubuğunu kullanmak istiyorum. i ihtiyaçlarınızı yanlış anlama ediyorum sürece – RullDawg

+0

, ayrıca kaydırma ızgara çıtayı ama plunker istiyorum ne ızgarada kaydırma çubuğu ve satırları yüksekliğe sayısına göre –

+1

Ben bir çatala fazla satır ekledik ayarlanır yok senin plunker [Güncelleme Plunker] (http://plnkr.co/edit/ghrGd1X9XO8wb6E8YUs7?p=preview). Gördüğüm şey, yaklaşık 10 satırlık bir yüksekliğe sahip bir tablo ama ızgarada 50'nin üzerinde. Kılavuzda bir kaydırma çubuğu görüyorum. – RullDawg

6

:

şu çözüm açısal-ui kullanarak gerektirir

Ayrıca, satır arka plan rengiyle kaydırma çubuğu için ng-ızgara yapraklarını da doldurabilirsiniz (ne yazık ki, veri son aralığı, boşluğu doldurmak için genişlemeyecek olsa da):

.ngCanvas { 
    width: 100% !important; 
} 
.ngRow { 
    width: 100% !important; 
} 

siz de diğer bazı stilleri değiştirmeniz gereken tablo düzenine olabilir bağlı ama bunlar ana olanlardır. Ayrıca, tüm ngGrid için bir yükseklik ayarlamamaya dikkat edin. senin sorunu çözecektir CSS'nizde bu ekleme

+0

yaklaşım kesinlikle çalışır satırlar no longer-görünür kaydırma sütuna tam genişliğini uzatmaz sağ çünkü ... ama görünmüyor. – CalvinDale

+0

Evet, daha önce. Ben CSS umuyordum uygulamak kolay olacağını fark etmedi ama maalesef öyle görünmüyor. :(Cevabımı güncelledim ama kaydırma çubuğunun olduğu yerde hala ölü alan var - Son hücreyi kalan genişliğe nasıl sığdırmayacağımı anlayamadım. –

+0

Bunlar benim için çalışıyor gibi görünüyor.Kaydırma çubuğunun da kullanıldığı boş alanı kaldırdık, sadece uç sütununda hücre sınırıyla biraz eğlenceler var, ama bununla yaşayabilirim - daha öncekinden daha iyiydi. –

10

:

.ngViewport{ 
    height:auto !important; 
} 
.ngCanvas, .ngViewport, .ngRow, .ngFooterPanel, .ngTopPanel { 
    width: 100% !important; 
} 
.ngRow { 
    border-bottom:none !important; 
} 
+0

'u tamamen unutmuşum .ngViewport'u ikinci listeden çıkarırım ve '.ngTopPanel' yerine' .ngHeaderContainer' ile değiştirin. 'ngViewport'un ngTopPanel'nin' ngHeaderContainer' ile çalıştığı gibi 'ngCanvas'dan boyutunu alması gerekiyor. – jwg