2015-11-21 37 views
13

Le mie transizioni native di reazione (utilizzando il Navigatore) sono molto lente, lasciando cadere i fotogrammi del thread javascript a 0 per un secondo o due quando l'animazione inizia per la prima volta, quindi fino a ~ 20, quindi in pausa a metà e poi di solito finiscono in modo relativamente fluido. Sto testando un Galaxy Note 4 pulito, quindi non è un problema di emulazione.Le transizioni native native di React sono molto lente

Sto visualizzando le viste vuote con InteractionManager.runAfterInteractions e quindi una listview di 5 elementi dopo che l'animazione è stata completata. Ho compilato l'app per la produzione e ho disattivato la modalità sviluppo.

È previsto/lo stato corrente delle cose (si spera di migliorare) oppure sto probabilmente facendo qualcosa di sbagliato? Se è così, qual è il modo migliore per cacciarlo? Ho pochissima logica in esecuzione.

Se non c'è una soluzione facile, c'è un modo per disabilitare le animazioni sulle transizioni di Navigator?

risposta

15

nel simulatore ios, il comando + T rallenta le animazioni verso il basso. Android probabilmente ha qualcosa di simile

+1

Risparmiatore di vita! (Sono venuto qui alla ricerca di animazioni lente nel simulatore iOS :-)) –

+2

stavo cercando questo per iOS. Ma non è un comando + T sullo xcode, è sul simulatore. Grazie! – josualeonard

+0

grazie @josualeonard, ho modificato la mia risposta per riflettere la correzione. –

4

I documenti ufficiali hanno a page on Performance, potresti volerlo controllare. Ha una sezione che parla specificatamente di slow Navigator transitions.

Inoltre, ho notato che React Native v0.14.0 con Chrome debugger abilitato è veramente lento, provare prima a disabilitarlo.

Le transizioni di navigazione sono nello NavigatorSceneConfigs module, ma non sembra avere una transizione senza animazione.

34

Disattiva il debugger di Chrome, rende l'animazione molto lenta.

+0

Hanno qualche spiegazione per questo? È difficile eseguire il debug quando si verificano lievi incoerenze con la versione di iOS. –

+0

Era quello facile)) grazie. – A1exandr

+0

Benvenuto :) @NaotoIda, immagino che stia estendendo i cicli di debug, dalla trasmissione dei dati e dalle operazioni necessarie per il debug. –