fix: row count logic

This commit is contained in:
ShengYan, Zhang 2023-05-10 09:27:33 +08:00
parent 1d489cfcea
commit a80dcaa1c3
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;
}