feat(Textarea): add maxrows prop to restrict autoresize (#1302)

Co-authored-by: Benjamin Canac <canacb1@gmail.com>
This commit is contained in:
pierre golfier
2024-02-05 16:18:20 +01:00
committed by GitHub
parent 5a5b284e96
commit f643e7b316
2 changed files with 17 additions and 1 deletions

View File

@@ -119,6 +119,18 @@ props:
---
::
Use the `maxrows` prop to set a maximum number of rows when autoresizing. If set to `0`, the Textarea will infinitely grow up.
::component-card
---
baseProps:
placeholder: 'Search...'
modelValue: 'Here is an autoresize Textarea, write new lines to make the Textarea grow up at a maximum of 5 rows...'
props:
autoresize: true
maxrows: 5
---
::
### Resize
Use the `resize` prop to enable the resize control.

View File

@@ -66,6 +66,10 @@ export default defineComponent({
type: Number,
default: 3
},
maxrows: {
type: Number,
default: 0
},
autoresize: {
type: Boolean,
default: false
@@ -160,7 +164,7 @@ export default defineComponent({
const newRows = (scrollHeight - padding) / lineHeight
if (newRows > props.rows) {
textarea.value.rows = newRows
textarea.value.rows = props.maxrows ? Math.min(newRows, props.maxrows) : newRows
}
}
}