跳到主要内容

列表型云变量

相关视频教程
【小布丁】列表型云变量的基本使用
【广告时间】做教程得贡献度,贡献度可提现可定制,可高倍率抵扣服务器成本,不知道做什么可以看悬赏单

服务端触发器中暴露了列表型云变量相关的API。并允许用户按照唯一ID来查询列表型云变量。

列表型云变量允许用户将一个云变量对象当作列表来进行存取,可以单独往列表中插入和删除值,而不需要一次性提交保存整个列表。

列表型云变量在处理大量同级别数据时非常有帮助。

举例而言用户想要在获得卡片时保存自己身上所有的卡片。若使用通常的云变量操作,不免要一次性保存下所有的卡片数据到某个云变量值中。但若在一次提交过程中,用户再次获得了一张卡片,那么这两次提交的结果就有潜在的存在冲突的可能性,比如说有可能第二次提交的内容反而先完成,被第一次提交的内容覆盖了,在这种情况下,如果处理不好,可能会导致第二次提交时的那张卡片数据没有被保存进去。

列表型云变量可以将一个云变量视为列表,并在提交过程中向那个列表插入和删除项目,在这些过程中,不会对其它项目的数据产生影响,而且只需要提交想要修改的那部分数据,因此是一个比较理想的避免冲突的方案。

在往一个列表型云变量插入条目时,可使用『添加云变量提交请求:列表型云变量新增项』触发器函数。
和一般的云变量提交请求不同的是,该函数本身就会返回一个『云变量列表项Id』类型的数字。这个数字是将被插入的列表型云变量项目的唯一标识。用户可以在今后通过该标识来直接查询、修改和删除对应的列表项目。(该唯一Id在云变量提交请求被提交前就已经生成,但若后续的提交失败,则该唯一Id会失效)

注:该函数也可作为动作使用,在这种情况下用户无法获得唯一Id。但后续可以通过查询整个列表内容的方式获得表中的各个项目的唯一Id。我们推荐用户主动保存唯一Id,以节省额外的查询消耗。

用户可以通过『添加云变量提交请求:列表型云变量删除项』和『添加云变量提交请求:列表型云变量修改项』动作,并传入对应的唯一Id,来删除和修改云端对应的列表元素。需要注意的是,云变量列表项Id是全局唯一的,因此在执行删除和修改操作时,用户无需再传入云变量的名称和用户虚拟id,仅需要传入唯一Id即可。

在查询列表型云变量时,用户可以查询整个指定列表中的所有项,也可以查询指定唯一Id的项目的当前值。前者可以通过『查询列表型云变量』动作来达成,该查询需要输入用户虚拟id和云变量名,并会返回一个数据集合,列出指定列表中所有的列表项元素,包括每个元素的唯一Id。后者可以通过『查询特定列表项id的列表型云变量』来完成,仅需要输入唯一Id,变可获得对应列表元素的值。

需要注意的是,列表型云变量可以保证插入和删除操作不影响列表中的其它元素,但对单个指定元素的值进行连续修改时,仍然需要注意时序的影响。