Component
Textarea
<DomTextareaInput>Multi-line text input with the same label/description chrome as the rest of the form components.
Playground
Try every prop live
Textarea playground
Edit props in the inspector — label, rows, and placeholder update live.
A short public summary.
Playground.vuevue
<script setup>
import { reactive } from 'vue';
import { DomTextareaInput } from '@getdom/studio/vue';
const data = reactive({
"modelValue": "",
"id": "",
"name": "",
"label": "Bio",
"description": "A short public summary.",
"placeholder": "Tell us about yourself…",
"required": false,
"disabled": false,
"readOnly": false,
"invalid": false,
"errors": {},
"visible": true,
"validators": [],
"validateOnBlur": true,
"chrome": "field",
"rows": 4
});
</script>
<template>
<DomTextareaInput
v-bind="data"
@update:modelValue="data.modelValue = $event"
/>
</template>Demo
Live preview
A short paragraph that appears under your name.
Usage
Vue
<script setup>
import { DomTextareaInput } from '@getdom/studio/vue';
import { ref } from 'vue';
const bio = ref('');
</script>
<template>
<DomTextareaInput
v-model="bio"
label="Bio"
description="A short paragraph that appears under your name."
:rows="4"
/>
</template>Props
Props
| Name | Type | Default | Description |
|---|---|---|---|
| v-model | string | '' | Bound text value. |
| label | string | — | Label above the textarea. |
| description | string | — | Hint shown below the textarea. |
| rows | number | 3 | Number of visible rows. |
| placeholder | string | — | Placeholder text. |
| disabled | boolean | false | Disable the textarea. |