Lit Virtual

The @tanstack/lit-virtual 适配器是核心 virtual 逻辑的封装。

createVirtualizer

tsx

private virtualizerController = new VirtualizerController<TScrollElement, TItemElement = unknown>(
    options: PartialKeys< VirtualizerOptions<TScrollElement, TItemElement>,
    'observeElementRect' | 'observeElementOffset' | 'scrollToFn'
)

private virtualizerController = new VirtualizerController<TScrollElement, TItemElement = unknown>(
    options: PartialKeys< VirtualizerOptions<TScrollElement, TItemElement>,
    'observeElementRect' | 'observeElementOffset' | 'scrollToFn'
)

此类代表一个标准的 Virtualizer 实例,该实例配置为与 HTML 元素作为 scrollElement 一起工作。 这将创建一个 Lit Controller,可以在元素渲染方法中访问它。

tsx
render() {
    const virtualizer = this.virtualizerController.getVirtualizer();
    const virtualItems = virtualizer.getVirtualItems();
} 
)
render() {
    const virtualizer = this.virtualizerController.getVirtualizer();
    const virtualItems = virtualizer.getVirtualItems();
} 
)

createWindowVirtualizer

tsx
private windowVirtualizerController = new WindowVirtualizerController<TItemElement = unknown>(
    options: PartialKeys< VirtualizerOptions<TItemElement>,
    'getScrollElement' | 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'
private windowVirtualizerController = new WindowVirtualizerController<TItemElement = unknown>(
    options: PartialKeys< VirtualizerOptions<TItemElement>,
    'getScrollElement' | 'observeElementRect' | 'observeElementOffset' | 'scrollToFn'

此类代表基于窗口的 Virtualizer 实例,该实例配置为与 HTML 元素作为 scrollElement 一起工作。

订阅 Bytes

您的每周 JavaScript 新闻。 每周一免费发送给超过 10 万名开发者。

Bytes

没有垃圾邮件。 随时取消订阅。