Form
textarea
Same API as upstream: shadcn/ui docs
$
npx shadcn@latest add @preactcn/textareaBasic
Basic
TextareaBasic
function TextareaBasic() {
return (
<Example title="Basic">
<Textarea placeholder="Type your message here." />
</Example>
)
}Invalid
Invalid
TextareaInvalid
function TextareaInvalid() {
return (
<Example title="Invalid">
<Textarea placeholder="Type your message here." aria-invalid="true" />
</Example>
)
}With Label
With Label
TextareaWithLabel
function TextareaWithLabel() {
return (
<Example title="With Label">
<Field>
<FieldLabel htmlFor="textarea-demo-message">Message</FieldLabel>
<Textarea
id="textarea-demo-message"
placeholder="Type your message here."
rows={6}
/>
</Field>
</Example>
)
}With Description
With Description
Type your message and press enter to send.
TextareaWithDescription
function TextareaWithDescription() {
return (
<Example title="With Description">
<Field>
<FieldLabel htmlFor="textarea-demo-message-2">Message</FieldLabel>
<Textarea
id="textarea-demo-message-2"
placeholder="Type your message here."
rows={6}
/>
<FieldDescription>
Type your message and press enter to send.
</FieldDescription>
</Field>
</Example>
)
}Disabled
Disabled
TextareaDisabled
function TextareaDisabled() {
return (
<Example title="Disabled">
<Field>
<FieldLabel htmlFor="textarea-demo-disabled">Message</FieldLabel>
<Textarea
id="textarea-demo-disabled"
placeholder="Type your message here."
disabled
/>
</Field>
</Example>
)
}Full example source
textarea-example.tsx
import {
Example,
ExampleWrapper,
} from "@/components/example"
import {
Field,
FieldDescription,
FieldLabel,
} from "@/components/ui/field"
import { Textarea } from "@/components/ui/textarea"
export default function TextareaExample() {
return (
<ExampleWrapper>
<TextareaBasic />
<TextareaInvalid />
<TextareaWithLabel />
<TextareaWithDescription />
<TextareaDisabled />
</ExampleWrapper>
)
}
function TextareaBasic() {
return (
<Example title="Basic">
<Textarea placeholder="Type your message here." />
</Example>
)
}
function TextareaInvalid() {
return (
<Example title="Invalid">
<Textarea placeholder="Type your message here." aria-invalid="true" />
</Example>
)
}
function TextareaWithLabel() {
return (
<Example title="With Label">
<Field>
<FieldLabel htmlFor="textarea-demo-message">Message</FieldLabel>
<Textarea
id="textarea-demo-message"
placeholder="Type your message here."
rows={6}
/>
</Field>
</Example>
)
}
function TextareaWithDescription() {
return (
<Example title="With Description">
<Field>
<FieldLabel htmlFor="textarea-demo-message-2">Message</FieldLabel>
<Textarea
id="textarea-demo-message-2"
placeholder="Type your message here."
rows={6}
/>
<FieldDescription>
Type your message and press enter to send.
</FieldDescription>
</Field>
</Example>
)
}
function TextareaDisabled() {
return (
<Example title="Disabled">
<Field>
<FieldLabel htmlFor="textarea-demo-disabled">Message</FieldLabel>
<Textarea
id="textarea-demo-disabled"
placeholder="Type your message here."
disabled
/>
</Field>
</Example>
)
}