Skip to content

Campo de entrada ​

Uso básico ​

vue
<template>
  <lh-input v-model="text" placeholder="Escribe..." />
  <lh-input v-model="text" type="textarea" :rows="3" autosize placeholder="Multilínea" />
  <lh-input v-model="text" type="password" placeholder="Contraseña" />
</template>

<script setup lang="ts">
import { ref } from 'vue'
const text = ref('')
</script>

Estilo del marcador de posición (imprescindible en MP) ​

El Mini Programa no admite ::placeholder

El WXSS del Mini Programa de WeChat no admite el pseudoelemento ::placeholder. El estilo del marcador de posición se pasa mediante props: no escribas ::placeholder en CSS (la salvaguarda de compilación también lo bloquea).

vue
<lh-input placeholder="Escribe..." placeholder-style="color: #999; font-size: 13px" />
<!-- o usar una clase -->
<lh-input placeholder="Escribe..." placeholder-class="my-placeholder" />

Con icono y estados ​

vue
<template>
  <lh-input v-model="text" prefix-icon="search" placeholder="Buscar" clearable />
  <lh-input v-model="text" suffix-icon="close" placeholder="Icono de sufijo" />
  <lh-input v-model="text" state="error" placeholder="Estado de validación fallida" />
  <lh-input v-model="text" :maxlength="20" show-word-limit placeholder="Conteo de caracteres" />
</template>

Props ​

PropDescripciónTipoPredeterminado
modelValue (v-model)Valor enlazadostring—
typeTipo'text' | 'textarea' | 'password' | 'number' | 'email' | 'url' | 'tel' | 'date' | 'time''text'
sizeTamaño'small' | 'medium' | 'large'—
disabledDesactivadobooleanfalse
readonlySolo lecturabooleanfalse
placeholderTexto del marcador de posiciónstring—
placeholderStyleEstilos en línea del marcador de posición (sustituye a ::placeholder)string—
placeholderClassClase del marcador de posición (mutuamente excluyente con placeholderStyle)string—
maxlengthLongitud máximanumber—
minlengthLongitud mínimanumber—
showWordLimitMostrar el conteo de caracteresbooleanfalse
clearableSe puede vaciarbooleanfalse
prefixIconIcono de prefijoLhIconName—
suffixIconIcono de sufijoLhIconName—
stateEstado de validación'error' | 'success' | 'warning'—
namename nativo (para la recolección del formulario)string—
passwordModo contraseñabooleanfalse
rowsNúmero de líneas del textareanumber—
autosizeAutoajuste de altura del textarea (el auto-height de MP)booleanfalse
labelTexto de la etiquetastring—
customClassClase personalizadastring—
themeVarsVariables de tema a nivel de componenteRecord<string, string>—
sxProps rápidas de disposiciónLhSxProps—

Events ​

EventoDescripciónParámetros de la retrollamada
update:modelValueCambio de valor(value: string)
inputEntrada (toma event.detail.value)(value: string)
blurPérdida de foco—
focusObtención de foco—
clearVaciado—

Diferencias frente a la versión Vue3

autocomplete / autofocus / resize / form / tabindex / nativeType / inputStyle no tienen una capacidad equivalente en el Mini Programa, de modo que no se implementan en esta biblioteca. autosize se apoya en la propiedad auto-height del textarea del Mini Programa.