長いタイトルのために申し訳ありません。Linking.getInitialURLは常に実行され、アプリが複製されています
は、ここに私のcomponentDidMount()
機能
componentDidMount() {
Linking.getInitialURL().then(data => {
console.log(data);
});
}
私は私のアプリを起動すると、data
は当然null
に設定されているのです。
ユーザー、その後は、ユーザーが自分のアプリケーションに戻ってリダイレクトされる場合は
Linking.open('https://...);
を経由して開かれたGoogle Chromeの経由でログインし、私はdata
が取り込まれていることがわかります。これはすべてうまくいいです。
しかし、私がリダイレクトされると、重複したコンポーネントが表示されます。ここにReact Native Debuggerのスクリーンショットがあります。この重複の、私のアプリは二回componentDidMount()
を呼び出し、Linking.getInitialURL()
が複数回呼び出されているので、私は<AppContainer root=1..>
と
<AppContainer root=11..>
を持っています。
さらに、開発者用メニューからアプリをリフレッシュすると、null
のときにLinking.getInitialURL
の約束から返されたdata
がまだ埋め込まれています。