2016-09-14 11 views
2

私の目標:Vaadinテーブルは、親要素の高さ(Horizo​​ntalLayout)を100%とする必要があります。大きなテーブルを持つVaadinテーブルの動的ページ長

私はページの長さを0に設定できることを知っていますが、テーブルが実際には長いので、遅延ロードの動作を維持したいと思います。 Vaadinにページ長を動的に決定させる方法はありますか?

更新:私が正しく高さを設定SCSSで

.v-table-body { 
    height: calc(100% - #{($v-table-row-height + 3 * $v-table-border-width)}) !important; 
    } 

、とハックを発見しました。しかし、!importantを使用することはここでは邪魔になるという事実の他に、怠け者にも15行ステップの行番号、つまり1-15...が表示されます。

+0

'table.setHeight(" 100% ")の問題は何ですか? –

+0

問題は、ページ長= 0でない限り、高さを100%に設定しないということです。 –

+0

遅延ロードメカニズムは 'setPageLength()'の影響を受けません。それは視覚的な設定だけです。 'setCacheRate()'はあなたのキャッシュに影響します。 –

答えて

0

私は何を見つけたことである:あなただけのテーブルが今大きく、あなたの画面サイズに応じて、複数のオブジェクトを示し

table.setSizeFull(); 
horizontalLayout.addComponent(table); 

を書くことができます。しかし、テーブルはまだキャッシュで動作します。 Chromeのデベロッパーツールの[ネットワーク]タブには、すべての要素が送信されるわけではなく、その一部(可視の行+キャッシュされた要素)だけが送信されるわけではありません。デバッグすることで、表のpageLengthメンバーが可視要素の数に応じて変更されていることが分かりました。

ページの長さを設定する必要はなく、CSSのハックは必要ありません。

関連する問題