Similaire Ă #1693. Il semble que ce soit un problĂšme avec le composant Touchable
avec le débogage Chrome sur React Native 0.19.0.
Attempted to transition from state `RESPONDER_INACTIVE_PRESS_IN` to `RESPONDER_ACTIVE_LONG_PRESS_IN`, which is not supported.
This is most likely due to `Touchable.longPressDelayTimeout` not being cancelled.
stack:
reactConsoleError @ ExceptionsManager.js:76
console.error @ YellowBox.js:49
TouchableMixin._handleLongDelay @ Touchable.js:575
JSTimersExecution.callbacks.(anonymous function) @ JSTimers.js:47
JSTimersExecution.callTimer @ JSTimersExecution.js:69
JSTimersExecution.callTimers @ JSTimersExecution.js:92
__callFunction @ MessageQueue.js:183
(anonymous function) @ MessageQueue.js:87
guard @ MessageQueue.js:41
callFunctionReturnFlushedQueue @ MessageQueue.js:86
onmessage @ debuggerWorker.js:39
Le code qui produit cette erreur provient d'une application qui vient d'ĂȘtre lancĂ©e Ă l'aide d'un composant TouchHighlight :
class App extends Component {
constructor() {
super()
this.state = {
testText: ''+Math.random()
}
}
_updateTouch(e) {
this.setState({testText: ''+Math.random()})
}
render() {
return (
<View style={styles.container}>
<Text>
{this.state.testText}
</Text>
<TouchableHighlight onPress={this._updateTouch.bind(this)}>
<Image
style={width: 100, height: 100}
source={{uri: 'http://facebook.github.io/react/img/logo_og.png'}}
/>
</TouchableHighlight>
</View>
);
}
}
PS Existe-t-il un meilleur moyen de copier un stacktrace ? Je copie juste à partir de la console des outils de développement Chrome
Salut Dyscrete, merci d'avoir signalé ce problÚme !
React Native, comme vous l'avez probablement entendu, devient trÚs populaire et la vérité est que nous sommes un peu dépassés par l'activité qui l'entoure. Il y a tout simplement trop de problÚmes pour que nous puissions les gérer correctement.
react-native
ou pour plus d'interactions en temps rĂ©el, demandez sur Discord dans le #react-native channel.J'obtiens la mĂȘme erreur lors du test sur un iPhone6 ââ(9.1)
En quoi ce numĂ©ro est-il diffĂ©rent du #1693 ? En gĂ©nĂ©ral, le problĂšme semble ĂȘtre le mĂȘme. Pouvons-nous le fermer et poursuivre l'enquĂȘte lĂ -haut car il contient plus de dĂ©tails ?
+1
J'ai aussi ce problÚme, et il m'est souvent arrivé de changer de navigateur
Je vais le fermer car @askday a également mis une meilleure reproduction dans le #1693. Veuillez rouvrir si OP a mentionné quelque chose de différent.
MĂȘme erreur pour moi.
RĂ©agir 0.31
DĂ©bogage de Chrome.
En utilisation normale il n'y a pas de problĂšme.
console.error : "Tentative de transition de l'état RESPONDER_INACTIVE_PRESS_IN
Ă RESPONDER_ACTIVE_LONG_PRESS_IN
, ce qui n'est pas pris en charge. Cela est probablement dĂ» au fait que Touchable.longPressDelayTimeout
n'a pas été annulé."
Objet.console.erreur
YellowBox.js:60
Constructeur._handleLongDelay
Touchable.js:595
JSTimersExecution.callbacks.(anonyme
index.ios.bundle?platform=ios&dev=true&minify= false:8476Â :13
Objet.callTimer
JSTimersExecution.js:84
JSTimersExecution.js:119
Objet.callTimers
JSTimersExecution.js:119
MessageQueue.__callFunction
MessageQueue.js:204
MessageQueue.js:95
+1
+1
+1
+1
:+1:
??
+1
+1
+1
+1
+1
+1
+1
+1
+1
J'ai également cette erreur, mais uniquement sur Android. IOS fonctionne comme prévu.
+1
+1
+1
+1
+1
+1
+1
+1 mĂȘme erreur uniquement sur Android mais iOS fonctionne bien.
+1 comme @binzailani3136
+1
Félicitations pour ce bogue sélectionné comme l'un des problÚmes les plus notoires de RN0.39
+1
+1
+1
+1
+1
+1
+1
+1
Les gars, vos +1 ne sont pas utiles, et c'est dans #1693
+1
+1
+1
+1
+1
+1
Comme je vois que beaucoup de gens semblent toujours avoir ce problÚme, et celui-ci est fermé, alors j'en crée un nouveau ici : #11989
+1
+1
@magrinj , pourquoi ce problĂšme est-il clos alors que tant de personnes, y compris moi-mĂȘme tout Ă l'heure sur RN 0.37, continuent de rencontrer cette erreur ? Existe-t-il une solution provisoire du cĂŽtĂ© de l'application ?
@fungilation J'ai peut-ĂȘtre fait une erreur en ouvrant un nouveau ticket, car celui-ci est ouvert et parle du mĂȘme problĂšme : #1693
Corrigé aprÚs l'ajout d'une vue
<TouchableNativeFeedback>
<View> // <= here
<Text style={css.item}>{rowData.title + rowData.id}</Text>
</View>
</TouchableNativeFeedback>
@Yadro , vous voulez dire insérer des correctifs supplémentaires de View du cÎté de l'application, ou RN peut le corriger en interne en le faisant ?
hm, mon anglais est mauvais, mais l'insertion d'une vue supplémentaire résout ce problÚme
D'accord. Je ferai un rapport si je rencontre toujours ce problÚme avec des vues supplémentaires
+1
Je ne reçois cela que lorsque je suis en débogage à distance. Cela ne se produit pas normalement. RN .41.2. Windows 10. Android
+1
@ckwong90 , certains ici, n'apparaissent que lors du débogage à distance
RN .41.2. macOS Sierra 10.12.3
Idem ici, Android 6.0, dernier RN, débogage à distance
+1
+1
+1
Je rencontre ce problĂšme avec react-native-button
et le modÚle de débogage dans Chrome
J'ai résolu le problÚme en enveloppant le composant Button avec View.
+1
J'ai déjà enveloppé les composants dans une vue, mais j'ai eu cette erreur. AprÚs cela, tout TouchableHighlight de mon application a généré cette erreur. Résolu (temporaire ?) En effaçant les données de l'application dans les paramÚtres. Le problÚme s'est produit dans Android, Emulator, Win10, RN 0.42.3 avec "Debug JS Remotely" sans "Hot Reloading".
pareil ici
+1
+1 arrive quand je change de navigateur
+1
Vous avez la mĂȘme erreur. La reconstruction de l'application Ă partir de XCode l'a rĂ©solu pour moi.
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
Des progrĂšs lĂ -dessus ?
Ce problÚme se produit lorsque je débogue à distance.
n'importe qui?!
aprÚs avoir développé pendant 3 semaines, ce problÚme apparaßt soudainement lorsque j'utilise le composant Fab nativebase. J'espÚre que F8 pourra résoudre ce problÚme
Avoir le mĂȘme problĂšme,
+1
+1
+1
+1
render() {
let {onNavigateToOfferScreen, navigation} = this.props;
let {dataSource} = this.state;
return (
<ListView style={styles.container} dataSource={dataSource} renderRow={offer => (
<TouchableHighlight onPress={() => onNavigateToOfferScreen(offer)}>
<View style={styles.row} elevation={2}>
<Text style={styles.businessName}>{offer.name}</Text>
</View>
</TouchableHighlight>
)}/>
);
}
+1
La mĂȘme chose
+1
+1
+1
+1
+1 .... cette erreur apparaßt juste aprÚs avoir commencé à utiliser fetch ...
mĂȘme problĂšme, la vue supplĂ©mentaire ne fonctionne pas
+1
+1
compter++
+1
STOP avec le +1 spam. Donnez simplement un pouce levĂ© au message d'origine ou au commentaire si vous voyez la mĂȘme chose.
@fungilation đ
+1
Cela ne se produit qu'avec le débogage à distance et j'ai corrigé ce problÚme temporairement en procédant comme suit :
Remarque : Il s'agit vraiment d'une solution temporaire . Il apparaßt encore à plusieurs reprises de temps en temps.
@Jarrio Merci
@lukemiles pensées?
+1
+1
+1
La solution tmp de @Jarrio fonctionne pour le moment
+1
+1
+1
rn 48 +1,
+1
m 48 + 1
Le problÚme ne s'est produit que si le débogage js à distance est activé... avec le mode normal, cela fonctionne bien.
rn 49,3+ 1
+1
+1
+1
+1
Je change TouchableHighlight
en TouchableOpacity
, ça n'arrive pas
RN.50 +1
@Jarrio jette toujours l'erreur tout de suite sur Android
+1 0,47
RN@0,51 +1
+1
S'IL VOUS PLAĂT ARRĂTER +1 !!!
euh... plus 1, alors
+1
+1
+1 pour 0,48.3
+1 sur 0.51.0
+1 c'est sympa, j'adore. Arrive de 0.50
+1
+1
+1
avec natif de réaction 0.51.0
J'ai "rĂ©parĂ©" ce problĂšme en rĂ©glant manuellement l'heure de l'appareil sous Android. Assurez-vous que la nouvelle heure sera Ă©gale Ă celle de votre ordinateur (visez le changement de minute suivante), confirmez le changement d'heure Ă la mĂȘme seconde que l'heure de votre ordinateur passera Ă la minute suivante.
+1
+1
+1
+1
+1
+1
La solution pour moi Ă©tait de
+1
Dans LibrariesComponentsTouchableTouchableHighlight.js remplacer
touchableGetLongPressDelayMS: function() {
renvoie this.props.delayLongPress ;
},
avec
touchableGetLongPressDelayMS: function() {
retourner this.props.delayLongPress === 0 ? 0Â :
this.props.delayLongPress || 500Â ;
},
Cela a résolu le problÚme pour moi.
+1
+1
J'ai eu le mĂȘme problĂšme sur Android quand
a) mon téléphone portable était connecté à mon PC via USB
b) J'ai utilisé le débogage à distance via le réseau
La déconnexion de l'USB a résolu le problÚme. Aucune idée s'il y a un lien de causalité, cependant.
Edit : aprÚs avoir rencontré des problÚmes supplémentaires avec les délais d'attente asynchrone, j'ai vérifié l'heure actuelle sur PC et appareil Android via
adb shell date && date
.
Il y avait un Ă©cart de 5 secondes. On pourrait ĂȘtre tentĂ© de deviner qu'il existe une incohĂ©rence dans la façon dont RN gĂšre l'heure actuelle lors du dĂ©bogage Ă distance.
Passant par
curl -s --head http://google.com | grep ^Date: | sed 's/Date: //g'
J'ai identifié le coupable dans mon cas : l'heure systÚme de mon appareil Android était décalée de 5 secondes. Le redémarrage de l'appareil Android a corrigé l'écart.
Je viens de vérifier l'heure de l'appareil Android et de mon Mac avec : adb shell date && date
. Il diffĂ©rait de plus de 2 minutes. Ensuite, j'ai activĂ© le rĂ©glage automatique de l'heure sur mon appareil Android et j'ai exĂ©cutĂ© Ă nouveau la mĂȘme commande et voilĂ , l'heure a Ă©tĂ© synchronisĂ©e, mais le fuseau horaire n'Ă©tait pas le mĂȘme mĂȘme si sur les deux (appareil Android et Mac) le rĂ©glage du fuseau horaire Ă©tait automatique. J'ai donc dĂ©sactivĂ© le rĂ©glage automatique du fuseau horaire sur mon appareil Android et l'ai rĂ©glĂ© manuellement sur le correspondant et l'erreur a disparu.
+1
+1
le réglage automatique de l'heure sur l'appareil Android et le réglage automatique de l'heure sur l'ordinateur ont résolu le problÚme
sur Ubuntu, j'ai synchronisé l'heure systÚme avec l'heure actuelle de la BAD en faisant :
sudo date +%T -s `adb shell date +%T`
+1
+1
Verrouillage en raison de commentaires +1 répétitifs. Une solution a été publiée il y a longtemps par @Larry-Liu2016 ici . En résumé, vérifiez l'heure de vos appareils.
Commentaire le plus utile
Corrigé aprÚs l'ajout d'une vue