【问题标题】:How to reload Algolia cache on CRUD operations?如何在 CRUD 操作中重新加载 Algolia 缓存?
【发布时间】:2018-07-25 04:12:24
【问题描述】:
这里是新手。
在带有 Instantsearch.js 库的 Angular 5 应用程序中,如何在 CRUD 操作上从我的模型中重新加载 Algolia 缓存?我使用 Cloud Firestore 作为我的数据库,并且我有一个云功能来与 Algolia 同步数据。
目前,我必须刷新浏览器才能使更改生效。
【问题讨论】:
标签:
firebase
google-cloud-firestore
algolia
instantsearch.js
【解决方案1】:
您应该使用例如 websockets 将请求发送到您的前端,当它收到这样的“新数据”事件时,您应该调用 search.refresh()。
whateverListenerYouHave.on('data', () => search.refresh());
另见the docs,以及一些相关问题:instantsearch.js#2670 和instantsearch.js#1050
在 Angular InstantSearch 的上下文中,您需要创建一个连接器才能访问 search(InstantSearch.js 的实例)