Ver código fonte

[RN] Fix _getRouteToRender after Deeplinking (#2760)

j8
Lyubo Marinov 7 anos atrás
pai
commit
eac74aa0b7
1 arquivos alterados com 13 adições e 2 exclusões
  1. 13
    2
      react/features/app/middleware.js

+ 13
- 2
react/features/app/middleware.js Ver arquivo

@@ -77,9 +77,20 @@ function _connectionEstablished(store, next, action) {
77 77
 function _navigate({ getState }) {
78 78
     const state = getState();
79 79
     const { app } = state['features/app'];
80
+    const routeToRender = _getRouteToRender(state);
80 81
 
81
-    _getRouteToRender(state)
82
-        .then(routeToRender => app._navigate(routeToRender));
82
+    // XXX Web changed _getRouteToRender to return Promsie instead of Route.
83
+    // Unfortunately, the commit left mobile to return Route.
84
+    let routeToRenderPromise;
85
+
86
+    if (routeToRender && typeof routeToRender.then === 'function') {
87
+        routeToRenderPromise = routeToRender;
88
+    }
89
+    if (!routeToRenderPromise) {
90
+        routeToRenderPromise = Promise.resolve(routeToRender);
91
+    }
92
+
93
+    routeToRenderPromise.then(app._navigate.bind(app));
83 94
 }
84 95
 
85 96
 /**

Carregando…
Cancelar
Salvar