我有一个位于特定路线的组件:
<Route path='/route-path' component={MyComponent} />
在这个组件中,我所有的 firestore 侦听器都是在 componentDidMount 中创建的,如下所示:
componentDidMount() {
var unsubscribe = db.collection(name)
.where("query", "==", false)
.onSnapshot((querySnapshot) => {
// do something
})
}
如果路由发生变化,是否需要取消订阅此侦听器?就像是:
componentWillUnmount() {
unsusbscribe() // from componentDidMount
}
或者这是由路由更改自动处理的,即 websocket 关闭连接?