component for Solid which grows with content — Fork of <a href="https://github.com/bigmistqke/solid-textarea-autosize" target="_blank" rel="noopener noreferrer">https://github.com/bigmistqke/solid-textarea-autosize</a> (mirror: upstream/solid-textarea-autosize)</body></html>
  • TypeScript 96.4%
  • HTML 3.6%
Find a file
aotearoacoder 86ff26904e
Some checks failed
Format / format (push) Failing after 1m10s
Build and Test / build (16.x, ubuntu-latest) (push) Failing after 1m15s
Build and Test / build (17.x, ubuntu-latest) (push) Failing after 1m15s
Update package.json exports to avoid typescript error
2024-06-29 14:39:47 -04:00
.github/workflows port react-textarea-autosize 2023-01-08 23:44:43 +01:00
dev example 2023-01-09 22:52:22 +01:00
docs bump 2023-01-09 22:51:09 +01:00
src fix: support both onInput and oninput 2023-01-14 16:51:04 +01:00
.editorconfig port react-textarea-autosize 2023-01-08 23:44:43 +01:00
.gitignore port react-textarea-autosize 2023-01-08 23:44:43 +01:00
.prettierrc port react-textarea-autosize 2023-01-08 23:44:43 +01:00
LICENSE port react-textarea-autosize 2023-01-08 23:44:43 +01:00
package-lock.json port react-textarea-autosize 2023-01-08 23:44:43 +01:00
package.json Update package.json exports to avoid typescript error 2024-06-29 14:39:47 -04:00
pnpm-lock.yaml port react-textarea-autosize 2023-01-08 23:44:43 +01:00
README.md update readme 2023-01-09 22:50:10 +01:00
rollup.config.ts "solid" and "solid/web" as external 2023-01-09 18:03:36 +01:00
tsconfig.json port react-textarea-autosize 2023-01-08 23:44:43 +01:00

npm version npm

solid-textarea-autosize

A port of react-textarea-autosize

Drop-in replacement for the textarea component which automatically resizes textarea as content changes. A native solid version of the popular jQuery Autosize! Weighs around 1.3KB (minified & gzipped).

This module supports IE9 and above.

import TextareaAutosize from "solid-textarea-autosize";

// If you use CommonJS syntax:
// var TextareaAutosize = require('solid-textarea-autosize').default;

render(
  () => (
    <div>
      <TextareaAutosize />
    </div>
  ),
  document.getElementById("element"),
);

Install

npm install solid-textarea-autosize

Demo

https://bigmistqke.github.io/solid-textarea-autosize/

Props

Special props:

prop type description
maxRows number Maximum number of rows up to which the textarea can grow
minRows number Minimum number of rows to show for textarea
onHeightChange func Function invoked on textarea height change, with height as first argument. The second function argument is an object containing additional information that might be useful for custom behaviors. Current options include { rowHeight: number }.
cacheMeasurements boolean Reuse previously computed measurements when computing height of textarea. Default: false

Apart from these, the component accepts all props that are accepted by <textarea/>, like style, onChange, value, etc, with the exception of textarea's row-attribute and the style-properties height, min-height and max-height.

FAQ

How to focus

Get a ref to inner textarea:

<TextareaAutosize ref={(tag) => (textarea = tag)} />

And then call a focus on that ref:

this.textarea.focus();

To autofocus:

<TextareaAutosize autoFocus />

(all HTML attributes are passed to inner textarea)