Skip to content

STextArea <s-text-area> ​

Notes या descriptions जैसे लंबे content के लिए एक multi-line text input। STextArea Shopify के Polaris <s-text-area> web component का typed Vue 3 wrapper है।

ts
import { STextArea } from 'polaris-vue-elements'

Best practices ​

  • इसका आकार अपेक्षित उत्तर के अनुसार रखें। दिखाई देने वाली rows की संख्या संकेत देती है कि कितना लिखना है: छोटा area संक्षिप्त उत्तर आमंत्रित करता है, जबकि लंबा area अधिक विवरण माँगता है।
  • वास्तविक ज़रूरतों के अनुसार लंबाई की सीमाएँ तय करें। minLength और maxLength को इस आधार पर चुनें कि content को वास्तव में क्या चाहिए, और merchants को इन सीमाओं के बारे में पहले ही बता दें।
  • Placeholder को उदाहरण के रूप में उपयोग करें। Field किस लिए है यह दोहराने के बजाय ऐसा placeholder text लिखें जो आपके अपेक्षित content, format और tone को दिखाए।
  • बताएँ कि कितनी जगह बची है। जब आप अधिकतम लंबाई लागू करें, तो merchants को दिखाएँ कि कितने characters बचे हैं ताकि वे सीमा पार किए बिना अपना content फ़िट कर सकें।
vue
<STextArea label="Product description" :rows="6" :maxLength="500" placeholder="Handwoven from organic cotton, this throw adds warmth to any room." />

सभी सुझावों के लिए <s-text-area> के लिए Shopify की best practices (अंग्रेज़ी में) देखें।

उदाहरण ​

Value: (empty)

vue
<script setup>
import { ref } from 'vue'
import { STextArea } from 'polaris-vue-elements'

const value = ref('')
</script>

<template>
  <STextArea label="Bio" placeholder="Tell us about yourself" :rows="3" v-model="value" />
  <p>Value: {{ value }}</p>
</template>

v-model ​

<STextArea> पर v-model value property से bind होता है और input DOM event को सुनता है।

template
<STextArea v-model="value" />

इसके बराबर है:

template
<STextArea :value="value" @input="value = $event.target.value" />

Props ​

PropTypeविवरण
autocomplete"language" | "organization" | "name" | "additional-name" | "address-level1" | "address-level2" | "address-level3" | "address-level4" … (84 more)field में अपेक्षित content का संकेत। जब इसे on (default) पर सेट किया जाता है, तो यह property बताती है कि field को autofill सपोर्ट करना चाहिए, लेकिन अपेक्षित content के बारे में आपके पास कोई और semantic जानकारी नहीं है। off पर सेट करके आप बताते हैं कि इस field में संवेदनशील जानकारी है, या ऐसा content है जो कभी save नहीं होता, जैसे one-time codes। इसके बजाय, आप ऐसी value भी दे सकते हैं जो बताए कि autofill के दौरान इस field में कौन-सा विशेष डेटा भरा जाना चाहिए।
defaultValuestringfield का डिफ़ॉल्ट मान।
detailsanyfield के लिए संदर्भ या मार्गदर्शन देने वाला अतिरिक्त text। user को अधिक जानकारी या निर्देश देने के लिए यह text field और उसके label के साथ दिखाया जाता है। यह screen reader users को भी उपलब्ध कराया जाएगा।
disabledbooleanfield को disable करता है, जिससे कोई भी interaction संभव नहीं रहता।
erroranyuser को error बताएँ। field को एक विशेष style दिया जाएगा, ताकि ऐसी समस्याएँ बताई जा सकें जिन्हें तुरंत हल करना ज़रूरी है।
idstringelement के लिए एक unique identifier।
labelanyfield label के रूप में उपयोग होने वाला content।
labelAccessibilityVisibility"visible" | "exclusive"component के label की visibility बदलता है। - visible: label सभी users को दिखाई देता है। - exclusive: label दृश्य रूप से छिपा रहता है लेकिन accessibility tree में बना रहता है।
maxLengthnumberअनुमत characters की अधिकतम संख्या बताता है।
minLengthnumberअनुमत characters की न्यूनतम संख्या बताता है।
namestringfield के लिए identifier, जो सबसे नज़दीकी containing form के भीतर unique हो।
placeholderstringएक छोटा संकेत जो field की अपेक्षित value बताता है।
readOnlybooleanउपयोगकर्ता field को edit नहीं कर सकता। यह focus हो सकता है और screen readers द्वारा announce किया जाएगा।
requiredbooleanक्या field के लिए कोई मान ज़रूरी है। यह आवश्यकता field में semantic अर्थ जोड़ती है, लेकिन इससे अपने आप कोई error नहीं दिखेगा। यदि आप चाहते हैं कि यह field खाली होने पर error दिखे, तो आप error property के साथ ऐसा कर सकते हैं।
rowsnumberदिखाई देने वाली text lines की संख्या।
valuestringfield का वर्तमान मान। छोड़ देने पर field खाली रहेगा।

पढ़ने में आसानी के लिए ऊपर के कुछ type columns छोटे किए गए हैं; पूरा union library के generate किए गए TypeScript types (src/lib/generated/types.ts) में उपलब्ध है।

Events ​

EventType
blurFocusEvent
changeEvent
focusFocusEvent
inputEvent

इन्हें <STextArea> पर @blur जैसे listeners से सुनें।

Slots ​

Slotविवरण
details
error

MIT License के तहत जारी। Vue logo Evan You द्वारा, CC BY-NC-SA 4.0।