2016-10-08 131 views
1

所以,我創建集合在angular2-流星樣板建議:獲取插入文檔ID流星MongoObservable

export const BookCollection = new MongoObservable.Collection<Book>('books'); 

所以,如果我寫的是這樣的:

BookColletion.insert(..., callback_f); 

我m出現錯誤,第二個參數不存在。那麼,我應該如何獲取最後插入的文檔ID?

+0

在何處以及如何定義你'callback_f'? –

+0

也是什麼'MongoObservable'?你可能想使用'Mongo.Collection'和'BookCollection.find()。observeChanges({..'? –

+0

'callback_f(err,docId){console.log(docId)}'工作,但我沒有使用這種類型的集合... –

回答

2

我不知道什麼是MongoObservable,也不是說<Book>語法意味着什麼,但我懷疑你想要的東西是這樣的:

export const BookCollection = new Mongo.Collection('books'); 
BookCollection.find().observe({ 
    added(document) { 
    // document is the newly added document 
    } 
}); 
+0

但是,當我這樣做,在console.log(文檔)我有所有的文件,一個接一個地記錄下來[圖片](http://imgur.com/a/gheV8)。我需要最新的,我怎樣才能做到這一點? –

+0

這是一個被動模塊,隨着元素的添加,最新添加的內容將始終顯示最新內容,添加後顯示正確。想要嗎?如果你只想要所有項目的最後一項(靜態),那麼你需要對它們進行排序,但這並不需要觀察者。 –

+0

我需要最新插入_id來重定向。 –

1

你可以插入的ID是這樣的:

var insertedId = BookColletion.collection.insert(); 

提到here