Saltar al contenido

tamaño automático de área de texto en angular2

Solución:

Actualizar (15.04.2018) Se las arregló para empaquetarlo, ahora está disponible como

npm install ngx-autosize

https://github.com/chrum/ngx-autosize

Respuesta antigua:

¡Tuve el mismo problema hoy y lo solucioné! Por favor revise mi tenedor: https://github.com/chrum/angular2-autosize

Hasta que PR se fusione intente:

npm install https://github.com/chrum/angular2-autosize.git --save

Y luego, en su código, debido a que es ligeramente diferente, solo importa el módulo, no la directiva …

asi que
en lugar de:

import {Autosize} from 'angular2-autosize';

@NgModule({
  ...
  declarations: [
    Autosize
  ]
  ...
})

Deberías:

import {AutosizeModule} from 'angular2-autosize';

@NgModule({
  ...
  imports: [
    AutosizeModule
  ]
  ...
})

El comportamiento solicitado ya está implementado en angular material como se documenta aquí: Angular Material Input Autosize. Esto es especialmente útil si está utilizando angular material de todos modos.

Solo usa cdkTextareaAutosize como en el ejemplo:

<textarea cdkTextareaAutosize></textarea>

puede hacer esto sin usar el paquete. es simple

en el controlador como a continuación

autogrow(){
  let  textArea = document.getElementById("textarea")       
  textArea.style.overflow = 'hidden';
  textArea.style.height="0px";
  textArea.style.height = textArea.scrollHeight + 'px';
}

y en html como a continuación

<textarea id="textarea" (keyup)="autogrow()" ></textarea>
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *