Inhaltsverzeichnis
Um was für einen Fehler handelt es sich?
Ohne auf den geschäftlichen Hintergrund einzugehen, stellen wir kurz die Seitenlogik der Anwendung vor.
Die Seite sieht ungefähr wie folgt aus. Wenn Sie kein professioneller UX sind, wundern Sie sich bitte nicht, wenn sie hässlich ist.
Schritt 4: Testen Sie, ob der Fehler reproduziert werden kann
Schritt 5: Analysieren Sie die Grundursache des Fehlers
Heim Backend-Entwicklung PHP-Tutorial Gedanken nach der Behebung eines zufällig wiederkehrenden Tastaturproblems (ReactNative)

Gedanken nach der Behebung eines zufällig wiederkehrenden Tastaturproblems (ReactNative)

Mar 30, 2018 pm 01:49 PM
issue 键盘

Dieser Artikel teilt Ihnen einen Gedanken mit, nachdem ein zufällig wiederkehrendes Tastaturproblem behoben wurde. Es ist sehr sinnvoll, dass Freunde, die interessiert sind, einen Blick darauf werfen

Es hat vor kurzem fast eine Woche gedauert. Ich habe einen Fehler auf dem mobilen Endgerät gefunden. Es ist ein sehr interessanter Fehler, so etwas wie dieser. Dies ist eine relativ lange Geschichte. Wenn Sie interessiert sind, können Sie weiterlesen.

Um was für einen Fehler handelt es sich?

Der Fehler tritt auf, nachdem eine Tablet-Anwendung längere Zeit verwendet wurde. Klicken Sie zunächst auf „Fertig/Suchen“, nachdem Sie einige Inhalte in das Eingabefeld eingegeben haben. Klicken Sie anschließend auf einige leere Bereiche. und der Cursorfokus liegt auf Das zuletzt eingegebene Eingabefeld. Zu diesem Zeitpunkt wird die Reaktion der Anwendung auf das Benutzerverhalten die Benutzer verwirren und verwirren.

Zusammenfassend weist es folgende Eigenschaften auf


    Die Anwendung ist am Anfang normal, kann aber nicht jedes Mal reproduziert werden
  • Sobald dieser Fehler auf jeder Seite mit einem Eingabefeld auftritt, ist das wiederkehrende Szenario unbekannt. Es ist derzeit bekannt, dass es umso wahrscheinlicher ist, dass er auftritt. Sobald die Anwendung im Hintergrund geschlossen wird, wird die Krankheit neu gestartet und verschwindet wieder.
  • So beheben Sie diesen Fehler
  • Der erste Schritt besteht darin, zu versuchen, ihn wieder zu stabilisieren

  • Wir haben zunächst versucht, eine minimale User Journey zur Reproduktion zu finden Bei diesem Fehler hatte ich damals relativ viel Glück und brauchte etwa einen halben Tag, um den kleinsten Weg zum Wiederauftauchen zu finden.

Ohne auf den geschäftlichen Hintergrund einzugehen, stellen wir kurz die Seitenlogik der Anwendung vor.

Nach dem Anmelden verfügt unsere Anwendung über eine Startseite. Auf der Startseite gibt es drei Registerkarten, die zum Wechseln verschoben oder angeklickt werden können. Auf der Registerkartenseite gibt es auch einige Funktionsmenüs, auf die geklickt werden kann um zu einer anderen neuen Seite zu springen.

Die Seite sieht ungefähr wie folgt aus. Wenn Sie kein professioneller UX sind, wundern Sie sich bitte nicht, wenn sie hässlich ist.



Ein Pfad, den wir gefunden haben und der schnell reproduziert werden kann, ist
Gedanken nach der Behebung eines zufällig wiederkehrenden Tastaturproblems (ReactNative)Nachdem Sie sich auf der Startseite angemeldet haben, wechseln Sie drei Mal wiederholt Tab mehrmals (mehr als 20 Mal)

    Klicken Sie auf MenüA, um zu einer Seite mit einem Eingabefeld zu gelangen
  • Geben Sie Daten in die Eingabe ein Feld und klicken Sie auf „Fertig“ der Soft-Tastatur
  • Klicken Sie auf den leeren Bereich der Seite
  • und die Soft-Tastatur wird angezeigt.
  • Der zweite Schritt besteht darin, aus dem Codeteil herauszufinden, warum das Problem im Minimalszenario auftritt

  • Nachdem wir einen minimalen Reproduktionspfad gefunden haben, können wir aus dem Code herausfinden, warum das Problem auftritt auftritt.
Da dieser Fehler nach einem Neustart der Anwendung nicht verschwindet, richtet sich unser Verdacht auf das Renderproblem, das höchstwahrscheinlich durch die Komponente verursacht wird.

Es gibt ein paar Vermutungen unter uns

Es gibt ein Problem mit der von uns gekapselten Eingabekomponente

    Es gibt ein Problem mit Die Schiebekomponente der drei Registerkarten, die Schiebeansicht in der Komponente, wirkt sich auf das Gestenreaktionssystem von RN aus.
  • Schließlich scheint es, dass dies nicht der Fall ist mit einer anderen Kollegin in der Gruppe und sie stellte fest, dass es leicht zu Problemen kommen kann, wenn es viele Anfragen gibt. Es wurde auch vermutet, dass das Problem durch die Verarbeitung von Netzwerkanfragen verursacht wird. Dieser Verdacht ist eigentlich nicht ganz richtig, aber er findet für uns einen Weg.
  • Wir haben schließlich festgestellt, dass alle unsere Netzwerkanfragen eine Maskenebene und ein Ladeaufforderungssymbol ähnlich dem Spinner im Web (ActivityIndicator in RN) auf der Seite haben, bevor das Anfrageergebnis zurückgegeben wird. Dieser Teil wird beeinflusst Seitenrendering.

    Wenn dieser Teil entfernt wird (die Maske wird nicht angezeigt, bevor die Anfrage eintrifft), verschwindet der Fehler. Diese Entdeckung war damals noch schockierend und verwirrend, da es den Anschein hat, dass ein Teil der Ursache gefunden wurde, wir aber immer noch Ich habe es nicht herausgefunden.
Der dritte Schritt besteht darin, zu versuchen, es zu reparieren (ohne die Grundursache zu klären)

Mit dieser Idee im Hinterkopf versuchen wir, es zu reparieren. Gemäß den Geschäftsanforderungen können wir die Verwendung von ActivityIndicator nicht abbrechen, da es wirklich notwendig ist, den Benutzern entsprechende Eingabeaufforderungen zu geben.


Wir haben versucht, die Implementierung von mask zu ändern. In der alten Version haben wir die RN-Komponente „react-native-root-siblings“ eines Drittanbieters verwendet, um ein Geschwisterelement auf der Stammebene einzufügen, um unsere Ladung anzuzeigen Eingabeaufforderung.

Im Allgemeinen fügen wir nach dem Senden der Anfrage, aber bevor das Ergebnis der Anfrage eintrifft, ein neues Geschwisterelement ein und löschen es, nachdem die Anfrage abgeschlossen ist. Zu diesem Zeitpunkt wurde vermutet, dass aufgrund der wiederholten Änderung der Elementstruktur der Seite durch diesen Teil die Neu-Zerstörungslogik durch die Neu-Aktualisierungslogik ersetzt wurde, wodurch die Änderung von Elementen reduziert wurde. Beim Aktualisieren scheint nur der Versuch zu verhindern, dass der ActivityIndicator angezeigt wird, ausgeblendet zu sein.

Schritt 4: Testen Sie, ob der Fehler reproduziert werden kann

Wir hoffen, diesen Fehler zu beheben, indem wir das wiederholte Löschen und Erstellen von Seitenelementen reduzieren. Was ist das Ergebnis?
Es ist so magisch, dass es schwierig ist, es zu reproduzieren. Wir sind sehr glücklich, obwohl wir den Grund immer noch nicht verstehen.
Später sagte die Qualitätssicherung, dass es mehrmals auf echten Geräten aufgetreten sei, was uns noch mehr verwirrte. Das Rätselhafte daran ist, dass die Wahrscheinlichkeit des Auftretens tatsächlich geringer geworden ist, aber warum es immer noch auftritt.

Schritt 5: Analysieren Sie die Grundursache des Fehlers

Zu diesem Zeitpunkt müssen wir die wahre Ursache des Fehlers verstehen.
Kehren wir zur Leistung dieses Fehlers zurück. Warum löst das Klicken auf einen leeren Bereich die Fokusmethode von TextInput aus? Wir haben ein paar solcher Dinge ausprobiert.

  • Finden Sie heraus, wo der Fokus von TextInput ausgelöst wird

Zusätzlich zu einer kleinen Menge an Bindungsreferenzen in der Codelogik und dem anschließenden Auslösen die .focus-Methode (Da sie nur in geringer Anzahl vorkommt, erfüllt sie nicht unser Szenario, dass alle Eingaben betroffen sind, wenn dieser Fehler auftritt. Eine schnelle Beseitigung ist nicht Teil der Ursache.) Wir haben festgestellt, dass es auch viele Stellen im TextInput gibt Von RN bereitgestellte Komponente, in der die Fokusmethode aufgerufen wird.


Das obige ist der detaillierte Inhalt vonGedanken nach der Behebung eines zufällig wiederkehrenden Tastaturproblems (ReactNative). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie tippe ich Unterstreichungen auf der Tastatur? Wie tippe ich Unterstreichungen auf der Tastatur? Feb 22, 2024 pm 07:46 PM

Stellen Sie die Eingabemethode auf Englisch ein und halten Sie die Umschalttaste und die Minustaste gedrückt. Anwendbares Modell des Tutorials: Lenovo AIO520C System: Windows 10 Professional Edition: Microsoft Office Word 2022 Analyse 1 Überprüfen Sie zunächst die chinesische und englische Eingabemethode und passen Sie sie an Englisch an. 2Dann halten Sie gleichzeitig die Umschalttaste und die Minustaste auf Ihrer Tastatur gedrückt. 3 Überprüfen Sie die Benutzeroberfläche, um die unterstrichenen Wörter zu sehen. Ergänzung: So geben Sie schnell eine Unterstreichung in ein Word-Dokument ein 1. Wenn Sie in Word eine Unterstreichung eingeben müssen, wählen Sie das Leerzeichen mit der Maus aus und wählen Sie dann im Schriftartenmenü den Unterstreichungstyp aus, den Sie eingeben möchten. Zusammenfassung/Anmerkungen: Stellen Sie sicher, dass Sie die Eingabemethode auf Englisch ändern, bevor Sie fortfahren, da der Unterstrich sonst nicht erfolgreich eingegeben werden kann.

So öffnen Sie das Rechtsklick-Menü über Tastenkombinationen So öffnen Sie das Rechtsklick-Menü über Tastenkombinationen Jan 14, 2024 pm 03:12 PM

Wenn unsere Maus vorübergehend ihre Funktion verliert, wie kann ich das Rechtsklick-Menü mithilfe von Tastaturkürzeln öffnen? Eine besteht darin, die Tastenkombination Umschalt+F10 zu drücken, um das Rechtsklick-Menü anzupassen Die Tastenkombination zwischen Windows und Strg kann ebenfalls verwendet werden. Schauen wir uns das spezifische Tutorial unten an. Die erste Methode zur Verwendung von Tastaturkürzeln zum Öffnen des Rechtsklick-Menüs: 1. Wenn auf dem Computer-Desktop keine Datei ausgewählt ist, drücken Sie die im Bild unten mit einem roten Kreis markierte Schaltfläche auf der Tastatur. Diese Schaltfläche dient zum schnellen Öffnen das Rechtsklick-Menü. 2. Sie können das Rechtsklick-Menü auf dem Desktop öffnen. Wenn Sie ein Element auswählen müssen, verwenden Sie einfach die Maus, um es auszuwählen. Tatsächlich können wir zum Anpassen die Tastenkombination „Umschalt+F10“ verwenden das Rechtsklick-Menü 2

So beheben Sie das Problem, dass die Tastatur von Windows 11 nicht tippt So beheben Sie das Problem, dass die Tastatur von Windows 11 nicht tippt Dec 28, 2023 pm 05:59 PM

Kürzlich sind einige Freunde auf das Problem großer Zeichen auf der Win11-Tastatur gestoßen. Sie wissen nicht, welche Taste sie drücken sollen, um sie wiederherzustellen. Dies kann tatsächlich daran liegen, dass unsere Tastatur gesperrt ist und wir sie nur entsperren müssen. Welche Taste muss ich zum Wiederherstellen drücken, wenn ich auf der Win11-Tastatur nicht tippen kann? 1. Zuerst drücken wir die Tastenkombination „Linke Umschalttaste + Linke Alt-Taste + Numlock“ auf der Tastatur. 2. Klicken Sie dann nach dem Öffnen des unten gezeigten Menüs auf die Schaltfläche „Ja“, um die Maustasten zu aktivieren. 3. Klicken Sie anschließend auf das Symbol „Startmenü“ oder „Suchen“, um die Taskleiste zu öffnen. 4. Geben Sie anschließend „osk“ in das Suchfeld oben ein, um die Bildschirmtastaturanwendung zu öffnen. 5. Klicken Sie abschließend auf die „Numlock“-Taste in der unteren rechten Ecke der Bildschirmtastatur. Ps: Wenn Sie einen Laptop verwenden, dann

Automatische Tastatureingabe auf einem Windows-Laptop Automatische Tastatureingabe auf einem Windows-Laptop Feb 19, 2024 pm 05:33 PM

Computereingabegeräte wie Tastatur und Maus erfordern eine menschliche Bedienung und können nicht unabhängig voneinander betrieben werden. Das Gleiche gilt für das Touchpad und die Tastatur von Windows-Laptops. Es erfolgt keine automatische Texteingabe und auch kein automatischer Mausklick. Wenn etwas Ungewöhnliches passiert, muss es einen Grund dafür geben. Wenn Sie auf Probleme mit der automatischen Eingabe der Laptop-Tastatur stoßen, befolgen Sie die Anleitung, um das Problem zu beheben. Tastatur auf Windows-Laptop tippt automatisch Wenn die Tastatur auf Ihrem Windows-Laptop automatisch tippt, können Sie das Problem wie folgt beheben. Überprüfen Sie die Tastatur manuell. Stellen Sie sicher, dass die Tastatur ordnungsgemäß funktioniert. Überprüfen Sie, ob der Laptop remote angeschlossen ist. Überprüfen Sie, ob Autotyping-Programme ausgeführt werden. Führen Sie einen Malware-Scan durch. Passen Sie die Tastatureinstellungen an. Installieren Sie den Tastaturtreiber neu. Lassen Sie es uns im Detail wissen

So richten Sie die Tastatur-Boot-Funktion auf einem GIGABYTE-Motherboard ein (aktivieren Sie den Tastatur-Boot-Modus auf dem GIGABYTE-Motherboard) So richten Sie die Tastatur-Boot-Funktion auf einem GIGABYTE-Motherboard ein (aktivieren Sie den Tastatur-Boot-Modus auf dem GIGABYTE-Motherboard) Dec 31, 2023 pm 05:15 PM

So richten Sie den Tastaturstart auf dem Motherboard von Gigabyte ein. Wenn es den Tastaturstart unterstützen muss, muss es sich um eine PS2-Tastatur handeln! ! Die Einstellungsschritte sind wie folgt: Schritt 1: Drücken Sie Entf oder F2, um das BIOS nach dem Booten aufzurufen, und rufen Sie den Advanced-Modus (Normal) des BIOS auf. Standardmäßig wechseln Sie in den EZ-Modus (Easy) des Motherboards Drücken Sie F7, um in den erweiterten Modus zu wechseln. Motherboards der ROG-Serie rufen standardmäßig den erweiterten Modus auf (zur Demonstration verwenden wir vereinfachtes Chinesisch). Schritt 2: Wählen Sie „Erweitert“ – „Erweiterte Energieverwaltung (APM)“. Suchen Sie die Option [Aufwecken durch PS2-Tastatur] Schritt 4: Diese Option ist standardmäßig deaktiviert. Nach dem Herunterziehen sehen Sie drei verschiedene Einstellungsoptionen: Drücken Sie die [Leertaste], um den Computer einzuschalten, und drücken Sie die Gruppe

So weisen Sie Copilot-Tasten auf einer beliebigen Tastatur in Windows 11 zu So weisen Sie Copilot-Tasten auf einer beliebigen Tastatur in Windows 11 zu Feb 20, 2024 am 10:33 AM

Windows 11-Computertastaturen, die in den nächsten Monaten auf den Markt kommen, werden über eine neue Copilot-Taste verfügen. Mit dieser Taste können Benutzer einfach durch Drücken einer bestimmten Taste in den Co-Pilot-Modus wechseln, ohne einen neuen PC aufrüsten zu müssen. In dieser Anleitung wird detailliert beschrieben, wie Sie die Copilot-Taste auf einer beliebigen Windows 11-Tastatur einrichten. Microsoft gab kürzlich bekannt, dass sie wichtige Fortschritte bei der Weiterentwicklung des durch künstliche Intelligenz unterstützten Fahrens erzielt haben. Windows 11 wird eine dedizierte Copilot-Taste hinzufügen, um das Erlebnis für PC-Benutzer weiter zu verbessern. Diese Hardwareänderung stellt das erste große Upgrade der Windows-PC-Tastaturen seit dreißig Jahren dar. In den kommenden Monaten werden neue Windows 11-Computer über ein neues Copilot-Tastendesign auf der Tastatur verfügen

Liste der Win11-Tastaturkürzel Liste der Win11-Tastaturkürzel Jan 05, 2024 pm 02:46 PM

Das Win11-System verfügt über eine große Anzahl integrierter Tastaturkürzel, mit denen wir bestimmte Vorgänge schnell ausführen können. Viele Benutzer wissen jedoch nicht nur, was die Win11-Tastaturkürzel sind, sie sind auch nicht daran gewöhnt, sie zu verwenden. Deshalb zeigt Ihnen der Editor eine vollständige Liste der Win11-Tastaturkürzel. Lassen Sie uns sie gemeinsam lernen. Was sind die Win11-Tastaturkürzel: 1. F-Taste F1 Hilfe anzeigen alle F2 Ausgewählte Elemente umbenennen alle F3 Dateien oder Ordner durchsuchen alle F10 Menüleiste im aktiven Programm aktivieren Alle 2. Strg-Taste Strg+A Dokument oder Fenster auswählen Alle Elemente Alle Strg+C Ausgewählte Elemente kopieren Alle Strg+D Webseite zu Ihren Favoriten hinzufügen Alle Strg+J Download-Manager öffnen Alle Strg+L Hervorheben

Die Produkte der VGN-Co-Branding-Tastatur- und Mausserie „Elden's Circle' sind jetzt in den Regalen: Lani / Faded One benutzerdefiniertes Thema, ab 99 Yuan Die Produkte der VGN-Co-Branding-Tastatur- und Mausserie „Elden's Circle' sind jetzt in den Regalen: Lani / Faded One benutzerdefiniertes Thema, ab 99 Yuan Aug 12, 2024 pm 10:45 PM

Laut Nachrichten dieser Website vom 12. August hat VGN am 6. August die gemeinsame Tastatur- und Mausserie „Elden Ring“ auf den Markt gebracht, die Tastaturen, Mäuse und Mauspads umfasst, die im individuellen Design von Lani/Faded One gestaltet sind Es wurde auf JD.com zum Preis von 99 Yuan veröffentlicht. Die dieser Website beigefügten Informationen zu neuen Co-Branding-Produkten lauten wie folgt: VGN丨Elden Law Ring S99PRO-Tastatur Diese Tastatur verwendet ein Gehäuse aus reiner Aluminiumlegierung, ergänzt durch eine fünfschichtige Schalldämpferstruktur, verwendet eine GASKET-Blattfederstruktur und verfügt über eine einzelne -Tasten-Schlitzplatine und Tastenkappen aus PBT-Material in Originalhöhe, personalisierte Rückwandplatine aus Aluminiumlegierung; unterstützt Drei-Modus-Verbindung und SMARTSPEEDX-Technologie mit geringer Latenz, verbunden mit VHUB, kann es ab 549 Yuan mehrere Geräte auf einmal verwalten; VGN丨Elden French Ring F1PROMAX kabellose Maus die Maus

See all articles