Merge pull request #1371 from yanCode/fix/textarea-line

fix: row count logic
This commit is contained in:
Yifei Zhang 2023-05-10 10:47:06 +08:00 committed by GitHub
commit 0ad91101a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 4 deletions

View File

@ -158,15 +158,15 @@ export function autoGrowTextArea(dom: HTMLTextAreaElement) {
const width = getDomContentWidth(dom);
measureDom.style.width = width + "px";
measureDom.innerText = dom.value.trim().length > 0 ? dom.value : "1";
const emptyLineWrap = Math.max(0, dom.value.split("\n\n").length - 1);
measureDom.innerText = dom.value !== "" ? dom.value : "1";
const endWithEmptyLine = dom.value.endsWith("\n");
const height = parseFloat(window.getComputedStyle(measureDom).height);
const singleLineHeight = parseFloat(
window.getComputedStyle(singleLineDom).height,
);
const rows = Math.round(height / singleLineHeight) + emptyLineWrap;
const rows =
Math.round(height / singleLineHeight) + (endWithEmptyLine ? 1 : 0);
return rows;
}