[英]In react-konva (the HTML canvas lib), How can I emulate a classical editable <input > and get or read the string value entered there?
考虑到这一点(在回答其他问题之前有问题)演示来自这里: https ://codesandbox.io/s/kanbanboard-lackofcarddnd-doce75?file=/src/index.js 其中红色 <Text /> 模拟插入的按钮a < CustomCardContainer /> 基于第二个,我希望它可以作为 < input > 进行编辑和阅读,我会问:
我如何模拟一个输入并读取它的值,其中需要 {rows}x{cols} 格式的字符串? 编辑:我不只是关闭 DOM < input >,我对任何 HTML canvas 方式都持开放态度,以响应要输入的文本并获取其值。 我只想获取字符串值。
到目前为止,我在第 86 行中使用let inputValue = "10x2";
对值进行了硬编码。 但想插入不同大小的 < CustomCardContainer /> 以从此处获得此结果:分段自定义看板
https://konvajs.org/docs/sandbox/Editable_Text.html
“Konva 不支持这种情况。我们建议使用本机 DOM 元素(例如输入或文本区域)在画布之外编辑用户输入。”
您可以为文本区域使用contenteditable
属性。
const pseudoInput = document.getElementById('input'); pseudoInput.addEventListener('keyup', (e) => { console.log(e.target.innerHTML.split('x')); })
<div contenteditable id="input">10x20</div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.