mirror of
https://github.com/dzeiocom/FormManager.git
synced 2025-06-07 16:49:56 +00:00
Make it so textarea auto resize when value is changed
Signed-off-by: Florian Bouillon <florian.bouillon@delta-wings.net>
This commit is contained in:
parent
90d74bd21a
commit
b327499b24
@ -7,13 +7,19 @@ export default class TextAreaInput extends DefaultInput {
|
|||||||
public constructor(element: HTMLElement, form: FormManager) {
|
public constructor(element: HTMLElement, form: FormManager) {
|
||||||
super(element, form)
|
super(element, form)
|
||||||
element.style.resize = 'none'
|
element.style.resize = 'none'
|
||||||
const event = () => {
|
|
||||||
element.style.minHeight = "5px"
|
|
||||||
element.style.minHeight = `calc(2em + ${element.scrollHeight+5}px)`
|
|
||||||
}
|
|
||||||
;(element as HTMLTextAreaElement).addEventListener('keydown', event)
|
|
||||||
;(element as HTMLTextAreaElement).addEventListener('keypress', event)
|
|
||||||
|
|
||||||
|
;(element as HTMLTextAreaElement).addEventListener('keydown', this.event)
|
||||||
|
;(element as HTMLTextAreaElement).addEventListener('keypress', this.event)
|
||||||
|
}
|
||||||
|
|
||||||
|
private event = () => {
|
||||||
|
this.element.style.minHeight = "5px"
|
||||||
|
this.element.style.minHeight = `calc(2em + ${this.element.scrollHeight+5}px)`
|
||||||
|
}
|
||||||
|
|
||||||
|
public setValue(value: any) {
|
||||||
|
this.event()
|
||||||
|
this.element.value = this.formatValue(value) || ""
|
||||||
}
|
}
|
||||||
|
|
||||||
public static identity: InputIdentity = {
|
public static identity: InputIdentity = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user