2016-08-26 59 views
0

我正在監聽只有寫入的數據庫。 對於我使用下面的代碼:使用Pouchdb更改源如何從第一次更改開始

db.changes({ 
since: 'now', 
live: true, 
include_docs: true 
}).on('change', function (change) { 
    // change.id contains the doc id, change.doc contains the doc 
}).on('error', function (err) { 
// handle errors 
}); 

,因爲:「現在」從現在開始聽的變化,我要開始從第一DOC聽,當我趕上我要聽現場的變化。

有什麼辦法可以從第一次更改數據庫開始,然後獲得實時更改?

感謝

+0

你是什麼意思的「第一個文檔」 - 你的意思是數據庫中的第一個變化?如果你的意思是「從第一次改變」,那麼你可以從'1'開始傳遞,然後從頭開始。然後,每次更改都會調用'on change'處理程序,無論是舊的更改還是未來的更改。 –

+0

@MikeMcKay感謝您的評論,當我看到沙發db的變化時,我將seq no看作隨後是隨機字符串的數字。所以我很困惑,如果我只用1嘗試,它仍然會經歷db開始的變化嗎? –

回答

1

不要使用「因爲」選項,它總是會在數據庫中的第一個變化順序啓動。然後,它會針對數據庫中發生的每次更改調用「更改」處理程序,並且還會爲將來的所有更改調用「更改」處理程序。我有而不是在CouchDB 2.0上進行了測試,它對序號使用不同的格式(「字符串,而不是數字,因爲它對數據庫的每個分片的數字序列進行編碼」),但是我希望忽略自選項以同樣的方式工作。