【发布时间】:2016-04-25 16:25:16
【问题描述】:
在 Meteor 中,我有一个测验。
每个问题都有多个提示。
当用户要求另一个提示时,我如何才能一次释放一个提示?
我想我应该将提示存储为每个问题的数组,但我只想一次显示一个,所以不可能只显示整个数组。
我不知道如果提示数组包含对象是否最好
{ text: 'The hint text', isShownToUsers: ['userId1', 'userId2'] }
恐怕isShownToUsers 数组会变得很大,每次向用户显示问题时,我都必须订阅整个数组。
但也许保存向用户显示哪些提示也很好,这样用户在他/她回到问题时会看到相同的提示?
【问题讨论】:
-
我没有使用过流星,但这是一个想法。我猜每个用户都通过网络套接字连接到测验(根据我在流星上读到的内容,它是一个基于套接字的平台,对吧?)。如果是这种情况,您可以在连接的用户套接字
hasHintAtIndex: 0上设置一个属性,当他们第一次请求属性递增的提示并返回服务器上提示数组中该索引处的提示时。这样,您就不必为测验中的每个问题存储大量isShownToUsers。每当用户提出新问题时,hasHintAtIndex属性将重新索引为 0。
标签: javascript arrays node.js meteor