終於到了倒數第二天
現在一直在努力的寫前後端的程式碼跟串接
在前端 RxDB 中有一些 Middleware 和 hook 可以使用
所以還是要先了解一下相關的生命週期
RxDB 沒有驗證的 hook
因為在基本驗證的部分會在 Schema 處理
plainData 原始資料
RxDocument RxDocument 物件
Insert 新增一筆 Record 的時候
建立新的 Record 前觸發
preInert(cb(plainData), boolean)
Promise
進行非同步行為建立新的 Record 後觸發
preInert(cb(plainData, RxDocuemnt), boolean)
Promise
進行非同步行為RxDocuemnt.save 被呼叫 或是修改的時候
preSave(cb(plainData, RxDocuemnt), boolean)
Promise
進行非同步行為postSave(cb(plainData, RxDocuemnt), boolean)
Promise
進行非同步行為preRemove(cb(plainData, RxDocuemnt), boolean)
Promise
進行非同步行為postRemove(cb(plainData, RxDocuemnt), boolean)
Promise
進行非同步行為這個 hook 會被所有的 RxDocuemnt 建立的時候被呼叫
可以被在中間放入各種客製化的資料
但是這個 hook 不能夠使用非同步
myCollection.postCreate(function(plainData, rxDocument){
Object.defineProperty(rxDocument, 'myField', {
get: () => 'foobar',
});
});
const doc = await myCollection.findOne().exec();
console.log(doc.myField);
// 'foobar'