Dein erstes Geschwindigkeitsinstrument
Erstellen Sie einen Zähler, der Geschwindigkeit und Einheiten anzeigt. Erfahren Sie, wie main(), Text und VStack im vollständigen Skript verwendet werden, sehen Sie sich das Erscheinungsbild in der Vorschau an und speichern Sie es im Dashboard.
{ value: 42.3, unit: "km/h" }1. Instrument erstellen und Geschwindigkeit wählen
Öffnen Sie Mehr(…)→ Eigene Instrumente im Dashboard und wählen Sie Neues Instrument hinzufügen aus. Der neue Zähler verfügt bereits über einen Basisgeschwindigkeitseingang.
- Klicken Sie oben im Editor auf den Namen, gehen Sie zu Instrumenteneinstellungen und nennen Sie es „My Speed“.
- Klicken Sie auf das Zahnrad neben Eingabezuordnungen, um Parameterkonfiguration zu öffnen. Überprüfen Sie die Geschwindigkeitseingabe: Identifikator ist
speed, Typ ist Basisdaten, Quelle ist Geschwindigkeit. Wenn es fehlt, verwenden Sie Parameter hinzufügen, um ein neues zu erstellen. - Klicken Sie auf Fertig, um zurückzukehren und die Einstellungen zu speichern, und kehren Sie dann zum Bearbeitungsbereich zurück.
Das Skript liest die Geschwindigkeit über $data.current.speed; hier stammen die Feldnamen aus der Eingabekennung. Der Editor stellt Typhinweise wie definiert bereit. Für dieses Beispiel ist die Bindung OBD nicht erforderlich.
2. Den vollständigen Code einfügen
Ersetzen Sie den gesamten Originalinhalt des Bearbeitungsbereichs durch den vollständigen Code unten. Wickeln Sie es nicht in ein anderes main() ein. Dieses Beispiel hat nur eine Eingabefunktion.
Lassen Sie uns den Code vorerst beibehalten. Es liest die aktuelle Geschwindigkeit jedes Mal, wenn sie gezeichnet werden muss, und ordnet die Werte und Einheiten nach oben und unten an. Wenn ein Messwert fehlt, wird eine horizontale Linie angezeigt. Im nächsten Abschnitt wird es in der Ausführungsreihenfolge erläutert.
function main() {
const speed = $data.current.speed;
return (
<VStack spacing={8}>
<Text fontSize={64} color={$env.foreground}>
{speed?.value == null ? '—' : Math.round(speed.value)}
</Text>
<Text fontSize={16} color={$env.accent}>
{speed?.unit ?? $env.speedUnit}
</Text>
</VStack>
);
}
Vom Code zur Anzeige
Schauen Sie sich zuerst die Daten an, dann das Bild. Angenommen, dieses Mal ist speed { value: 42.3, unit: "km/h" }:
const speed = $data.current.speedHolen Sie sich diese Lektüre. Hier istspeedein Objekt, das numerische Werte und Einheiten enthält, nicht die Zahl selbst.speed?.value == nullprüft auf fehlende Messwerte. Wenn das Objekt nicht existiert oder der Wert leer ist, wird'—'ausgewählt; Wenn der Wert0ist, wird dieser Zweig nicht genommen.Math.round(speed.value)rundet42.3auf42und gibt es zur Anzeige an das ersteTextweiter. Das Runden wirkt sich nur auf die Anzeige dieses Messgeräts aus und verändert nicht den ursprünglichen Messwert.- Der zweite
Textzeigtspeed.unitan. Wenn derzeit keine Einheiten vorhanden sind, verwendet?? $env.speedUnitdie Geschwindigkeitseinheit der aktuellen Anzeigeumgebung. VStackordnet zwei Texte übereinander an undspacing={8}steuert den Abstand zwischen ihnen.
$env.foreground und $env.accent stellen die Text- und Akzentfarben für das aktuelle Thema bereit. Diese Farben werden aktualisiert, wenn sich das Thema ändert.
Verwenden Sie speed?.value || '—' nicht, um fehlende Messwerte zu beurteilen: JavaScript behandelt gültige Nullen als falsche Werte, was dazu führt, dass die horizontale Linie beim Parken falsch angezeigt wird.
3. Darstellung in der Vorschau prüfen
Klicken Sie unten im Editor auf Vorschau. Sie sollten oben eine größere Geschwindigkeitszahl und in der unteren Reihe kleinere Einheiten sehen. Bei den Zahlen in der Vorschau handelt es sich um simulierte Werte, die kein Starten des Fahrzeugs erfordern und nicht unbedingt mit der vom Mobiltelefon zu diesem Zeitpunkt gemessenen Geschwindigkeit übereinstimmen.
Nehmen Sie dann drei kleine Änderungen vor und zeigen Sie jedes Mal eine Vorschau an:
| Überarbeiten | Änderungen, die Sie sehen sollten |
|---|---|
fontSize={64} wurde in 48 geändert |
Die Hauptzahl wird kleiner. |
spacing={8} wurde in 16 geändert |
Zahlen und Einheiten liegen weiter auseinander. |
Die Farbe der Hauptnummer wurde in $env.accent geändert. |
Verwenden Sie Akzentfarben für Hauptzahlen. |
Schauen Sie sich die verschiedenen Größen sowie die hellen und dunklen Designs an. Wenn Inhalte auf eine bestimmte Größe zugeschnitten werden, reduzieren Sie zunächst die Schriftgröße oder den Schriftabstand und beobachten Sie dann. Verwenden Sie nicht viele x/y-Offsets, um Layoutprobleme zu vertuschen.
Wenn ein Fehler auftritt, stellen Sie den ursprünglichen Zustand wieder her und überprüfen Sie ihn anhand der Zeilennummer im Protokoll. In der Vorschau ist die obere rechte Ecke Protokoll; Nachdem Sie die Vorschau geschlossen und zum Bearbeitungsstatus zurückgekehrt sind, wird in der oberen rechten Ecke wieder Sichern angezeigt. Eine erfolgreiche Vorschau bedeutet lediglich, dass diese Simulationseingaben angezeigt werden können und die tatsächlichen Daten im nächsten Schritt überprüft werden müssen.
4. Speichern und hinzufügen
Schließen Sie die Vorschau, klicken Sie auf Sichern, verlassen Sie den Editor und suchen Sie in der Instrumentenbibliothek nach „My Speed“. Öffnen Sie Mehr(…)→ Dashboard bearbeiten erneut, klicken Sie auf +, um es hinzuzufügen, und klicken Sie schließlich auf Fertig.
An diesem Punkt wechselt die Karte, um die tatsächliche Geschwindigkeit anzuzeigen. Sie können es und den eingebauten Geschwindigkeitsmesser zur Überprüfung auf derselben Seite platzieren: Wenn sie dasselbe grundlegende Geschwindigkeitsfeld verwenden, sollten die Werte übereinstimmen; Aufgrund unterschiedlicher Dezimalaufbewahrungsmethoden kann die Anzeige geringfügig abweichen.
| Tatsächliche Anzeige | Nächster Schritt |
|---|---|
0 und Geschwindigkeitseinheit |
Die Nullgeschwindigkeit wurde erreicht und es besteht keine Notwendigkeit, die fehlende Testlogik zu beheben. |
— |
Gehen Sie zurück zu den Einstellungen, um zu bestätigen, dass die Geschwindigkeit ausgewählt ist, und überprüfen Sie dann die Positionierungsberechtigungen und die aktuellen Signale. |
| Es gibt Zähler in der Bibliothek, aber nicht auf der Seite. | Der Schritt „Dashboard bearbeiten → Hinzufügen“ ist noch nicht abgeschlossen. |
| Nur die Vorschau hat Zahlen | Bei der Vorschau handelt es sich um eine simulierte Eingabe. Fahren Sie mit der Überprüfung der tatsächlichen Datenquelle fort. |
Zu diesem Zeitpunkt ist das erste Instrument fertig. Ersetzen Sie im nächsten Artikel „Geschwindigkeit abrufen“ durch „Erhalten Sie Ihren eigenen OBD-Parameter“, und der Layout- und Anzeigecode kann weiterhin verwendet werden.
Weiter mit
Gerätedaten
Lesen Sie aktuelle Fahrdaten und historische Beispiele über $data und nutzen Sie die Ergebnisse für Texte, Grafiken und Kurven. In diesem Artikel werden die Datenkonfiguration, die Lesestruktur, die OBD-Parameter und Aktualisierungsregeln erläutert.