主题
DataStoreSetOptions
DataStore:SetAsync 的可选参数,可通过 DataStoreSetOptions.New() 构造。
概览
DataStoreSetOptions 是 DataStore:SetAsync 的可选参数容器,用于设置 KeyInfo 返回、元数据保留策略、前置版本依赖、用户 ID 和自定义元数据。
可通过
DataStoreSetOptions.New()构造
代码示例
构造选项
lua
-- @runtime client
local opts = DataStoreSetOptions.New()函数
GetUserIds
签名:GetUserIds() -> Table
读取当前选项中记录的用户 ID 列表。
返回值 Table — 用户 ID 列表
读取用户 ID 列表
lua
-- @runtime client
local userId = "10001"
local options = DataStoreSetOptions.New()
options:SetUserIds({ userId })
for _, userId in ipairs(options:GetUserIds() or {}) do
print(userId)
endSetUserIds
签名:SetUserIds(userIds: Array)
使用传入的用户 ID 数组整体替换选项中的用户 ID 列表。
| 参数 | 类型 | 说明 |
|---|---|---|
userIds | Array | 用户ID列表 |
整体替换用户 ID 列表
lua
-- @runtime client
local userId = "10001"
local options = DataStoreSetOptions.New()
options:SetUserIds({ userId })AddUserId
签名:AddUserId(userId: String)
向当前选项的用户 ID 列表中追加一个用户 ID。
| 参数 | 类型 | 说明 |
|---|---|---|
userId | String | 用户ID |
追加单个用户 ID
lua
-- @runtime client
local userId = "10001"
local options = DataStoreSetOptions.New()
options:AddUserId(userId)GetMetaDatas
签名:GetMetaDatas() -> Table
读取当前选项中保存的用户自定义元数据表,表中的键为字符串,值可以是任意类型。
返回值 Table — 元数据表(键为字符串,值为任意类型)
读取元数据字典
lua
-- @runtime client
local options = DataStoreSetOptions.New()
options:SetMetaData('source', 'save')
local metas = options:GetMetaDatas() or {}
print(metas.source)SetMetaDatas
签名:SetMetaDatas(dict: Table)
使用传入的字典整体替换选项中的用户自定义元数据。
| 参数 | 类型 | 说明 |
|---|---|---|
dict | Table | 元数据字典 |
整体替换元数据字典
lua
-- @runtime client
local options = DataStoreSetOptions.New()
options:SetMetaDatas({ source = 'save', season = 's1' })UpdateMetaDatas
签名:UpdateMetaDatas(dict: Table)
将传入的元数据字典合并到当前选项的元数据中,已存在的键会被新值覆盖。
| 参数 | 类型 | 说明 |
|---|---|---|
dict | Table | 要合并的元数据 |
合并更新元数据字典
lua
-- @runtime client
local options = DataStoreSetOptions.New()
options:SetMetaDatas({ source = 'save' })
options:UpdateMetaDatas({ season = 's1' })SetMetaData
签名:SetMetaData(name: String, value: String)
在选项中设置单个用户自定义元数据项,以 name 为键、以 value 为值。
| 参数 | 类型 | 说明 |
|---|---|---|
name | String | 元数据键名 |
value | String | 元数据键值 |
设置单个元数据
lua
-- @runtime client
local options = DataStoreSetOptions.New()
options:SetMetaData('source', 'save')属性
| 名称 | 类型 | 默认值 | 说明 |
|---|---|---|---|
WithKeyInfo | Bool | - | 设置在操作完成后是否返回 DataStoreKeyInfo 实例;该实例中包含版本号、创建和修改日期、用户 ID 及元数据信息。 |
KeepOldMetas | Bool | - | 设置在数据更新时是否保留旧元数据。 |
DependPrevVersion | String | - | 设置数据更新所依赖的前置版本号;仅当数据的当前版本与该属性值一致时,才允许执行本次更新。 |
