我有以下用于深度链接、动态链接侦听器的代码
class App extends Component {
public async componentDidMount() {
AppState.addEventListener("change", this.handleAppStateChange);
Linking.addEventListener("url", deepLinkHandler);
const deepLinkListener = firebase.dynamicLinks().onLink(this.handleListener);
}
public componentWillUnmount() {
Linking.removeEventListener("url", deepLinkHandler);
}
所以我不会因为";deepLinkListener";和AppState,可以吗?或者如何移除它?
提前感谢。。。
所以我不会删除"的侦听器;deepLinkListener";和AppState,可以吗?
这里的一个潜在问题是,如果多次装载和卸载组件,可能会导致多个事件处理程序处理同一事件。
所以我不会删除";deepLinkListener";和AppState,可以吗?
从这里的文档来看,onLink
的返回值似乎是侦听器的取消订阅方法。
由于您使用的是类组件,因此必须将该值存储为实例变量。然后,您可以在componentWillUnmount
上检查并调用该方法。