Skip to content

OrderedDataStoreKeyValueInfoPages

概览

字段
KindData · 数据 Data
Realmserver

继承关系

  • Pages(1 属性 / 2 函数)
    • [OrderedDataStoreKeyValueInfoPages]

继承成员

1 个来源 / 1 属性 / 2 函数

OrderedDataStoreKeyValueInfoPages 是 OrderedDataStore:GetSortedAsync 返回的分页迭代器,GetCurrentPage() 返回 OrderedDataStoreKeyValueInfo 数组。

适用场景

用于读取 OrderedDataStore 排序结果,例如排行榜或按数值排序的统计项。

使用要点

该类型不可直接构造,应从 DataStoreService:GetOrderedDataStore 获取 OrderedDataStore,再调用 GetSortedAsync 得到 pages。GetSortedAsync 是异步方法,需在协程环境中调用。

代码示例

分页读取 OrderedDataStore 排序结果

lua
-- @runtime server
local DataStoreService = game:GetService('DataStoreService')
local Task = game:GetService('Task')
local orderedStore = DataStoreService:GetOrderedDataStore('PlayerScore')

Task:Spawn(function()
    local options = DataStoreGetOptions.New()
    local pages = orderedStore:GetSortedAsync(false, 10, nil, nil, options)
    while true do
        for _, item in ipairs(pages:GetCurrentPage()) do
            print(item.Scope, item.Key, item.Value, item.UpdatedTime)
        end
        if pages.IsFinished then
            break
        end
        local ok = pages:AdvanceToNextPageAsync()
        if not ok then
            break
        end
    end
end)

关联类型