2015-01-09 26 views

回答

8

使用Meteor.setTimeout()可確保此代碼可識別光纖。閱讀關於Fibers的更多信息:https://github.com/laverdet/node-fibers

+0

謝謝你,你會如此友善地提供一個Meteor.setTimeout()可以用光纖做什麼樣的新事物的例子,而不是沒有? – Mcope

+0

你必須瞭解節點是如何工作的以及纖維允許的。 Slava(流星核心開發人員)檢查這個答案:https://groups.google.com/d/msg/meteor-talk/uipZ9I_37AU/SimAAlYnY6sJ –

19

在客戶端上,它們之間沒有區別。

在服務器上,當代碼(在方法調用爲例)運行特定用戶,你需要使用Meteor.setTimeout而不是window.setTimeout使流星記住哪個用戶的功能應該被調用。在調用傳遞給Meteor.setTimeout的函數之間的時間和被調用時,其他用戶可能已在服務器上調用了方法,因此請改爲Meteor.userId以返回其用戶標識。 Meteor.setTimeout將改回,所以Meteor.userId返回用戶的用戶ID,在調用傳遞給它的函數之前調用Meteor.setTimeout

這是一個設計決定。

+0

非常感謝這個解釋。 –