Crear tu primer velocímetro
Haz un medidor que muestre la velocidad y las unidades. Aprenda cómo se utilizan main(), Text y VStack en el script completo, obtenga una vista previa de la apariencia y guárdelos en el panel.
{ value: 42.3, unit: "km/h" }1. Crear y seleccionar la velocidad
Abra Más(…)→ Instrumentos personalizados en el tablero y seleccione Añadir un instrumento. El nuevo medidor ya viene con una entrada de velocidad base.
- Haga clic en el nombre en la parte superior del editor, vaya a Ajustes del instrumento y asígnele el nombre "Mi velocidad".
- Haga clic en el engranaje al lado de Vinculaciones de entrada para abrir Configuración de parámetros. Verifique la entrada de velocidad: el identificador es
speed, el tipo es Datos básicos, la fuente es Velocidad. Si falta, use Añadir parámetro para crear uno nuevo. - Haga clic en Listo para regresar y guardar la configuración, luego regrese al área de edición.
El script lee la velocidad a través de $data.current.speed; aquí los nombres de los campos provienen del identificador de entrada. El editor proporciona sugerencias de tipo según lo definido. Este ejemplo no requiere el enlace OBD.
2. Pegar todo el código
Reemplace todo el contenido original del área de edición con el código completo a continuación. No lo envuelvas en otro main(). Este ejemplo tiene solo una función de entrada.
Mantengamos el código igual por ahora. Leerá la velocidad actual cada vez que sea necesario dibujarla, organizará los valores y las unidades hacia arriba y hacia abajo; cuando falta una lectura, mostrará una línea horizontal. La siguiente sección lo explica en orden de ejecución.
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>
);
}
Del código a la pantalla
Mire primero los datos y luego la imagen. Supongamos que esta vez speed es { value: 42.3, unit: "km/h" }:
const speed = $data.current.speedObtenga esta lectura. Aquíspeedes un objeto que contiene valores numéricos y unidades, no el número en sí.speed?.value == nullbusca mediciones ausentes. Cuando el objeto no existe o el valor está vacío, se selecciona'—'; cuando el valor es0, esta rama no se tomará.Math.round(speed.value)redondea42.3a42y lo entrega al primerTextpara su visualización. El redondeo sólo afecta la visualización de este medidor y no modifica la lectura original.- El segundo
Textmuestraspeed.unit. Cuando actualmente no hay unidades,?? $env.speedUnitusa la unidad de velocidad del entorno de visualización actual. VStackorganiza dos textos uno encima del otro yspacing={8}controla el espacio entre ellos.
$env.foreground y $env.accent proporcionan el texto y los colores de acento para el tema actual. Estos colores se actualizarán cuando cambie el tema.
No utilice speed?.value || '—' para juzgar las mediciones ausentes: JavaScript tratará los ceros válidos como valores falsos, lo que provocará que la línea horizontal se muestre incorrectamente al estacionar.
3. Revisar el aspecto
Haga clic en Vista previa en la parte inferior del editor. Debería ver un número de velocidad mayor en la parte superior y unidades más pequeñas en la fila inferior. Los números en la vista previa son valores simulados, que no requieren arrancar el vehículo y no necesariamente son iguales a la velocidad medida por el teléfono móvil en ese momento.
Luego haga tres pequeñas modificaciones y luego obtenga una vista previa cada vez:
| Revisar | Cambios que deberías ver |
|---|---|
fontSize={64} cambió a 48 |
El número principal se vuelve más pequeño. |
spacing={8} cambió a 16 |
Los números y las unidades están más separados. |
El color del número principal cambió a $env.accent |
Utilice colores de acento para los números principales. |
Echa un vistazo a los diferentes tamaños y temas claros y oscuros. Cuando el contenido se recorta a un tamaño determinado, primero reduzca el tamaño de la fuente o el espaciado y luego observe. No utilice una gran cantidad de desplazamientos x/y para ocultar problemas de diseño.
Si ocurre un error, restáurelo al estado original y verifique de acuerdo con el número de línea en el registro. Al obtener una vista previa, la esquina superior derecha es Registros; después de cerrar la vista previa y volver al estado de edición, la esquina superior derecha vuelve a Guardar. Una vista previa exitosa solo significa que este conjunto de entradas de simulación se puede mostrar y los datos reales deben verificarse en el siguiente paso.
4. Guardar y añadir al panel
Cierre la vista previa, haga clic en Guardar, salga del editor y busque "Mi velocidad" en la biblioteca de instrumentos. Abra Más(…)→ Editar panel nuevamente, haga clic en + para agregarlo y finalmente haga clic en Listo.
En este punto, la tarjeta cambia para leer la velocidad real. Puede ponerlo y el medidor de velocidad incorporado en la misma página para verificación: cuando usan el mismo campo de velocidad básica, los valores deben corresponder; Debido a los diferentes métodos de retención decimal, la visualización puede ser ligeramente diferente.
| visualización real | Siguiente paso |
|---|---|
0 y unidad de velocidad |
Se ha alcanzado la velocidad cero y no es necesario corregir la lógica de prueba que falta. |
— |
Vuelva a la configuración para confirmar que la velocidad está seleccionada y luego verifique los permisos de posicionamiento y las señales actuales. |
| Hay medidores en la biblioteca, pero no en la página. | El paso "Editar panel → Agregar" aún no se ha completado. |
| Sólo la vista previa tiene números. | La vista previa es de entrada simulada; Proceda a verificar la fuente de datos real. |
En este punto, el primer instrumento está completo. En el próximo artículo, reemplace "obtener velocidad" con "obtenga su propio parámetro OBD" y podrá seguir utilizando el diseño y el código de visualización.
Continuar con
Datos del instrumento
Lea datos de conducción actuales y muestras históricas a través de $data y utilice los resultados para texto, gráficos y curvas. Este artículo explica la configuración de datos, la estructura de lectura, los parámetros OBD y las reglas de actualización.