在 forEach 中更新流星集合时无限循环
Infinite loop when updating meteor collection within forEach
我正在创建一个网站,允许用户对他们喜欢的事物进行投票以影响他们在列表中的顺序(例如 reddit)。
当我使用 forEach 遍历我的集合,然后尝试根据排序结果的索引更新每个条目时,它最终陷入无限循环,我的应用程序崩溃了!
任何帮助都会很棒,代码如下。
MyList.find( {}, sort: votes: -1 ).forEach ( item, index ) ->
MyList.update item._id, $set: rank: index
谢谢!
要阻止某些代码导致重新运行,请使用 Tracker.nonreactive
(http://docs.meteor.com/#/full/tracker_nonreactive)
像这样:
Tracker.nonreactive ->
MyList.find( {}, sort: votes: -1 ).forEach ( item, index ) ->
MyList.update item._id, $set: rank: index
我正在创建一个网站,允许用户对他们喜欢的事物进行投票以影响他们在列表中的顺序(例如 reddit)。
当我使用 forEach 遍历我的集合,然后尝试根据排序结果的索引更新每个条目时,它最终陷入无限循环,我的应用程序崩溃了!
任何帮助都会很棒,代码如下。
MyList.find( {}, sort: votes: -1 ).forEach ( item, index ) ->
MyList.update item._id, $set: rank: index
谢谢!
要阻止某些代码导致重新运行,请使用 Tracker.nonreactive
(http://docs.meteor.com/#/full/tracker_nonreactive)
像这样:
Tracker.nonreactive ->
MyList.find( {}, sort: votes: -1 ).forEach ( item, index ) ->
MyList.update item._id, $set: rank: index