Skip to content

Champ de saisie ​

Utilisation de base ​

vue
<template>
  <lh-input v-model="text" placeholder="Saisir" />
  <lh-input v-model="text" type="textarea" :rows="3" autosize placeholder="Multiligne" />
  <lh-input v-model="text" type="password" placeholder="Mot de passe" />
</template>

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

Style de l'espace réservé (obligatoire en MP) ​

Le Mini Programme ne supporte pas ::placeholder

Le WXSS du Mini Programme WeChat ne supporte pas le pseudo-élément ::placeholder. Le style de l'espace réservé doit être transmis via des props, n'écrivez pas ::placeholder en CSS (le garde de compilation le bloquera également).

vue
<lh-input placeholder="Saisir" placeholder-style="color: #999; font-size: 13px" />
<!-- ou avec une classe -->
<lh-input placeholder="Saisir" placeholder-class="my-placeholder" />

Avec icônes et états ​

vue
<template>
  <lh-input v-model="text" prefix-icon="search" placeholder="Rechercher" clearable />
  <lh-input v-model="text" suffix-icon="close" placeholder="Icône suffixe" />
  <lh-input v-model="text" state="error" placeholder="État d'erreur de validation" />
  <lh-input v-model="text" :maxlength="20" show-word-limit placeholder="Compteur de caractères" />
</template>

Props ​

PropDescriptionTypeValeur par défaut
modelValue (v-model)Valeur liéestring—
typeType'text' | 'textarea' | 'password' | 'number' | 'email' | 'url' | 'tel' | 'date' | 'time''text'
sizeTaille'small' | 'medium' | 'large'—
disabledDésactivébooleanfalse
readonlyLecture seulebooleanfalse
placeholderTexte de l'espace réservéstring—
placeholderStyleStyle en ligne de l'espace réservé (remplace ::placeholder)string—
placeholderClassClasse de l'espace réservé (alternative à placeholderStyle)string—
maxlengthLongueur maximalenumber—
minlengthLongueur minimalenumber—
showWordLimitAfficher le compteur de caractèresbooleanfalse
clearableVidablebooleanfalse
prefixIconIcône préfixeLhIconName—
suffixIconIcône suffixeLhIconName—
stateÉtat de validation'error' | 'success' | 'warning'—
namename natif (pour la collecte de formulaire)string—
passwordMode mot de passebooleanfalse
rowsNombre de lignes du textareanumber—
autosizeHauteur adaptive du textarea (auto-height du MP)booleanfalse
labelTexte du libelléstring—
customClassNom de classe personnaliséstring—
themeVarsVariables de thème de niveau composantRecord<string, string>—
sxPropriétés de mise en page rapideLhSxProps—

Events ​

ÉvénementDescriptionParamètre de callback
update:modelValueChangement de valeur(value: string)
inputSaisie (via event.detail.value)(value: string)
blurPerte de focus—
focusPrise de focus—
clearVidage—

Différences avec la version Vue3

autocomplete / autofocus / resize / form / tabindex / nativeType / inputStyle n'ont pas d'équivalent dans le Mini Programme et ne sont pas implémentés dans cette bibliothèque. autosize s'appuie sur l'attribut auto-height du textarea du Mini Programme.