Skip to content

DataStoreIncrementOptions

DataStore:IncrementAsync 的可选参数,可通过 DataStoreIncrementOptions.New() 构造。

概览

DataStoreIncrementOptions 是 DataStore:IncrementAsync 的可选参数容器,用于设置自增初始值、元数据、用户 ID、KeyInfo 返回和前置版本依赖。

可通过 DataStoreIncrementOptions.New() 构造

代码示例

构造选项

lua
-- @runtime client
local opts = DataStoreIncrementOptions.New()

函数

GetUserIds

签名:GetUserIds() -> Table

获取当前选项实例中的用户 ID 列表。

返回值 Table — 用户 ID 列表

读取用户 ID 列表

lua
-- @runtime client
local userId = "10001"
local options = DataStoreIncrementOptions.New()
options:SetUserIds({ userId })
for _, userId in ipairs(options:GetUserIds() or {}) do
    print(userId)
end

SetUserIds

签名:SetUserIds(userIds: Array)

使用传入的用户 ID 数组整体替换当前选项实例中的用户 ID 列表。

参数类型说明
userIdsArray用户ID列表

整体替换用户 ID 列表

lua
-- @runtime client
local userId = "10001"
local options = DataStoreIncrementOptions.New()
options:SetUserIds({ userId })

AddUserId

签名:AddUserId(userId: String)

向当前选项实例的用户 ID 集合中追加一个用户 ID,用于记录该次自增操作关联的用户。

参数类型说明
userIdString用户ID

追加单个用户 ID

lua
-- @runtime client
local userId = "10001"
local options = DataStoreIncrementOptions.New()
options:AddUserId(userId)

GetMetaDatas

签名:GetMetaDatas() -> Table

获取当前选项实例上的用户自定义元数据字典。

返回值 Table — 元数据表(键为字符串,值为任意类型)

读取元数据字典

lua
-- @runtime client
local options = DataStoreIncrementOptions.New()
options:SetMetaData('source', 'daily_reward')
local metas = options:GetMetaDatas() or {}
print(metas.source)

SetMetaDatas

签名:SetMetaDatas(dict: Table)

使用传入的字典整体替换当前选项实例中的用户自定义元数据集合。

参数类型说明
dictTable元数据字典

整体替换元数据字典

lua
-- @runtime client
local options = DataStoreIncrementOptions.New()
options:SetMetaDatas({ source = 'daily_reward', season = 's1' })

UpdateMetaDatas

签名:UpdateMetaDatas(dict: Table)

将传入的字典合并到当前选项实例的已有用户自定义元数据中,已存在的键会被新的值覆盖。

参数类型说明
dictTable要合并的元数据

合并更新元数据字典

lua
-- @runtime client
local options = DataStoreIncrementOptions.New()
options:SetMetaDatas({ source = 'daily_reward' })
options:UpdateMetaDatas({ season = 's1' })

SetMetaData

签名:SetMetaData(name: String, value: String)

设置当前选项实例中的单个用户自定义元数据项。

参数类型说明
nameString元数据键名
valueString元数据键值

设置单个元数据

lua
-- @runtime client
local options = DataStoreIncrementOptions.New()
options:SetMetaData('source', 'daily_reward')

属性

名称类型默认值说明
WithKeyInfoBool-指定执行自增后是否返回包含版本号、创建与修改时间、用户 ID 列表及元数据等信息的 DataStoreKeyInfo 实例。
KeepOldMetasBool-设定执行自增更新时是否保留旧的用户自定义元数据。
DefaultInitValueInt-设定当目标数据键尚不存在时的默认初始值,自增操作将基于该值开始累加。
DependPrevVersionString-记录本次自增操作所依赖的前置版本号,只有目标数据当前的版本与此版本一致时才允许执行自增。