0
我在流星的項目獲得此代碼Template.foo.onCreate空數組,在client/main.js
文件查詢蒙戈返回流星應用
Template.panel.onCreated(function loginOnCreated() {
var profile = Session.get('profile');
this.myvar = new ReactiveVar(User.find({}).fetch());
});
和User.find({})
結果是空的。如果我在其他地方查詢(包括meteor mongo
),我會得到一個用戶數組。
所以我想知道是否這是代碼在客戶端運行的問題。在這個相同的文件中,我得到了這個查詢在其他地方工作,但可能在服務器上下文中。
一旦模板/頁面加載,我怎樣才能用Mongo結果填充這個ReactiveVar
?
如果我做這樣的事情在Meteor.startup()
在服務器端:
它給我的用戶數目正確。立即。
@edit
如果我只加幾秒鐘setTimeout
(不能僅僅指剛1秒,它需要一個longet時間),它工作在這個非常相同的地方。
Template.panel.onCreated(function loginOnCreated() {
//...
setTimeout(function(){
template.timeline.set(User.find({}).fetch());
console.log(timeline)
},3000);
});
所以,任何人都知道爲什麼需要這麼長時間才能做這個操作?任何解決方法?
什麼方法?像Method.methods一樣?我如何在服務器端創建一個方法,如果從客戶端調用? –
此鏈接將有助於方法調用details.https://guide.meteor.com/methods.html – Shivani
或簡單地在server.js啓動代碼後結束您可以創建簡單的方法 - – Shivani