订购数据存储器 基本上是一个 GlobalDataStore ,只是存储值必须为 正整数 。它显示一个方法 1> Class.OrderedDataStore:GetSortedAsync()|GetSortedAsync()1> ,可以检查排序顺序使用 4> Class.DataStorePages4> 对象
订购的数据存储不支持版本和数据金属,因此 DataStoreKeyInfo 总是是 nil 对于键在 OrderedDataStore 中。 如果您需要版本和数据金属协助,请使用 1> Class.DataStore1> 。
订购的数据存储不支持 userIds 参数为 SetAsync() 或 IncrementAsync()。
有关使用订购式数据存储的概述,请参阅数据存储。
代码示例
local DataStoreService = game:GetService("DataStoreService")
local pointsStore = DataStoreService:GetOrderedDataStore("Points")
local function printTopTenPlayers()
local isAscending = false
local pageSize = 10
local pages = pointsStore:GetSortedAsync(isAscending, pageSize)
local topTen = pages:GetCurrentPage()
-- The data in 'topTen' is stored with the index being the index on the page
-- For each item, 'data.key' is the key in the OrderedDataStore and 'data.value' is the value
for rank, data in ipairs(topTen) do
local name = data.key
local points = data.value
print(name .. " is ranked #" .. rank .. " with " .. points .. "points")
end
-- Potentially load the next page...
--pages:AdvanceToNextPageAsync()
end
-- Create some data
pointsStore:SetAsync("Alex", 55)
pointsStore:SetAsync("Charley", 32)
pointsStore:SetAsync("Sydney", 68)
-- Display the top ten players
printTopTenPlayers()
概要
方法
返回一个 DataStorePages 对象。
返回指定的数据存储中的钥匙的值,以及一个 DataStoreKeyInfo 实例。
- IncrementAsync(key : string,delta : number,userIds : Array,options : DataStoreIncrementOptions):Variant
将键的值提高一个指定的数量(两者都必须为整数)。
保留可访问版本,同时移除指定的钥匙。
设置数据存储为指定钥键的值。
更新键的值,从指定的回调函数中获取一个新值。
属性
方法
GetSortedAsync
返回一个 DataStorePages 对象。排序顺序是由 上升 决定的,每个页面的长度由 pageSize 决定,并且 2> minValue2> / 5> maxValue5> 是可选参数,用于过滤结果。
请参阅数据存储获取限制和错误代码的描述。
参数
一个指示返回数据页是否按上升顺序的指示。
每个页面的长度。默认为 50 个。最大允许值为 100 个。
可选参数。如果设置,数据页面上的值小于 minValue 将被排除。
可选参数。如果设置,数据页面上的值大于 最大值 将被排除。
返回
基于提供的参数排序的 DataStorePages 对象。