Ein Befehlssatz-Plug-in, das zur Implementierung der Tabellenkopfobergrenze, der Tabellenendeobergrenze, der unteren Obergrenze der Bildlaufleiste und der höhenadaptiven Funktionen von Element UI-Tabellen (Vue 2) verwendet wird.
Wenn die Tabellenkomponente von Element UI verwendet wird und zu viel Inhalt in der Tabelle vorhanden ist, werden Bildlaufleisten in der Tabelle angezeigt, aber der Tabellenkopf wird nicht nach oben verschoben, und die Gesamtzeilen am Ende der Tabelle werden angezeigt Wenn die Tabelle zu viel Inhalt enthält, werden die Tabellenüberschrift und die letzte Zeile nicht nach unten verschoben. Wenn eine horizontale Bildlaufleiste vorhanden ist, müssen Sie sie verschieben Jedes Mal, wenn Sie scrollen möchten, erscheint eine Reihe von Schwachstellen, die sich stark auf die Benutzererfahrung auswirken.
Lösung für die Element-Benutzeroberfläche : Erfüllen Sie die oben genannten Anforderungen, indem Sie das Attribut max-height oder height festlegen.
Mängel der Element-Benutzeroberfläche : Der Höhenwert unterstützt nur das Festlegen numerischer Werte, und in der tatsächlichen Entwicklung ist es häufig erforderlich, JS zu seiner Berechnung zu verwenden.
Um die oben genannten Probleme/Anforderungen zu lösen und die Entwicklungs- und Wartungskosten zu senken, wurde dieses Plug-in erstellt. Einzelheiten finden Sie in der Ideenanalyse.
Einige Anweisungen basieren auf position: sticky “ und unterstützen daher nur moderne Browser und Online-Beispiele.
npm install @cell-x/el-table-stickyAnweisungen zur globalen Registrierung:
import elTableSticky from '@cell-x/el-table-sticky'
Vue . use ( elTableSticky )
// 或者
Vue . use ( elTableSticky , {
StickyHeader : {
// 吸顶偏移量,可以是 CSS 支持的距离值,如 `0px`、`10%`、`calc(100vh - 1rem)` 等
offsetTop : 0 ,
// 滚动条吸底偏移量,可以是 CSS 支持的距离值,如 `0px`、`10%`、`calc(100vh - 1rem)` 等
offsetBottom : 0 ,
} ,
StickyFooter : {
// 吸底偏移量,可以是 CSS 支持的距离值,如 `0px`、`10%`、`calc(100vh - 1rem)` 等
offsetBottom : 0 ,
} ,
StickyScroller : {
// 吸底偏移量,可以是 CSS 支持的距离值,如 `0px`、`10%`、`calc(100vh - 1rem)` 等
offsetBottom : 0 ,
} ,
HeightAdaptive : {
// 底部偏移量,只能是数字型
offsetBottom : 0 ,
}
} )Anweisungen zur Teilregistrierung:
import {
StickyHeader ,
StickyFooter ,
StickyScroller ,
HeightAdaptive ,
} from '@cell-x/el-table-sticky'
export default {
directives : {
StickyHeader : new StickyHeader ( { offsetTop : 0 , offsetBottom : 0 } ) . init ( ) ,
StickyFooter : new StickyFooter ( { offsetBottom : 0 } ) . init ( ) ,
StickyScroller : new StickyScroller ( { offsetBottom : 0 } ) . init ( ) ,
HeightAdaptive : new HeightAdaptive ( { offsetBottom : 0 } ) . init ( ) ,
}
} < el-table v-sticky-header > ... </ el-table >
< el-table v-sticky-footer > ... </ el-table >
< el-table v-sticky-scroller > ... </ el-table >
< el-table v-height-adaptive > ... </ el-table > | Anweisung | veranschaulichen | Modifikator | Typ | Standardwert |
|---|---|---|---|---|
v-sticky-header | Befehl „Kopfzeilendecke“. | .always | Object{Number, String} | offsetTop: 0, offsetBottom: 0 |
v-sticky-footer | Die Summenzeile am Ende der Tabelle ist der unterste Saugbefehl | .always | Object{Number, String} | offsetBottom: 0 |
v-sticky-scroller | Befehl für die horizontale Bildlaufleiste unten | .always | Object{Number, String} | offsetBottom: 0 |
v-height-adaptive | Hochadaptive Anweisungen | - | Object{Number} | offsetBottom: 0 |
v-sticky-header und v-sticky-footer verfügen über eine integrierte Bildlaufleisten-Saugfunktion, sodass der Befehl v-sticky-scroller nicht erneut verwendet werden mussv-sticky-header und v-sticky-footer gleichzeitig verwendet werden, basiert der offsetBottom der Bildlaufleiste auf v-sticky-footerhover , der durch Festlegen des Modifikators „ .always “ so geändert werden kann, dass er immer angezeigt wirdv-height-adaptive Direktive hängt nicht vom position: sticky -Attribut ab und kann allein verwendet werden yarn install
# Compiles and hot-reloads for development
yarn serve
# Compiles and minifies for production
yarn build
# Compiles and minifies for production with demo
yarn build:demo
# Lints and fixes files
yarn lintPassen Sie die Konfiguration an, siehe Konfigurationsreferenz.