我正在開發一個測試結構字,我希望在每次運行時重置所有集合。如何在Meteor包中獲取Meteor.users集合?
我在使用Meteor.users
時遇到問題,因爲它在包環境中未定義。
是否有任何解決方法可以在包內從清理Meteor.users系列?
我正在開發一個測試結構字,我希望在每次運行時重置所有集合。如何在Meteor包中獲取Meteor.users集合?
我在使用Meteor.users
時遇到問題,因爲它在包環境中未定義。
是否有任何解決方法可以在包內從清理Meteor.users系列?
包加載順序檢查http://docs.meteor.com/#/full/allow和出口變量事,當談到符號可用性包。
爲了得到一個符號創建了在一個包中,它必須在您的包之前加載。這可以通過取決於它或其他一些取決於的包來實現。
此類符號的示例是添加到Meteor
對象的方法,這是您的情況正在發生的情況。
api.use('some-package'); // some-package is the desired package or depends on it
爲了得到一個符號,是由包出口,您應該直接依賴於它,或取決於意味着這個包(或包明確出口的象徵)。
api.use('some-package'); // some-package exports the symbol directly or by implying
可以使這種依賴性弱,如果你不想被添加到包的包,如果你的包是依賴於它(只有一個,即,沒有其他的包強烈取決於它,並且用戶不會將其添加爲頂級依賴項)。
api.use(['some-package'], ['client', 'server'], {weak: true});
如果你需要所有的包都加載之後做一些事情,你可以用Meteor.startup()
這樣做:
Meteor.startup(function() {
//do stuff after all packages and code were loaded
});
你可以把一些對用戶集「復位邏輯」, Meteor.users.allow({ remove:function() { resetLogic(); });
請爲參考
我不認爲這與問題有關。 'allow'回調是針對數據突變請求觸發的,它們不會觸發它們。你能詳細說明嗎? – MasterAM
請問您的包有'賬戶,base'的依賴? – MasterAM
謝謝,這是做到了。請將它作爲評論發佈,以便將其標記爲已接受的答案。 –