这里我有类似下面的 HTMLElement
<div id='hiddenDiv'>
<div>foobar</div>
</div>
我正在做类似下面的事情,试图将它转换成 JSX.Element:
function renderMailCompose(): JSX.Element {
const content = document.getElementById('hiddenDiv');
return content;
}
但是我得到了错误
Type 'HTMLElement' is missing the following properties from type 'ReactElement<any, any>': type, props, key
我想知道如何将包含所有内容的 div 正确转换为 JSX.Element。任何帮助将不胜感激!
最佳答案
一般来说,除非你有使用getElementById
的特定原因,否则我们通常想做的就是使用内置的useRef来将元素存储在变量中
Hook 。
所以你可以这样做-
const hiddenDivRef = useRef<HTMLDivElement>(null);
return (
<div ref={hiddenDivRef}>
<div>foobar</div>
</div>
);
之后我们可以像这样访问值-
console.log(hiddenDivRef.current);
您还可以使用您通常拥有的所有相关功能,
即 - .focus()
等...
https://stackoverflow.com/questions/70096826/
相关文章:
javascript - 按顺序播放多个音轨,而不是同时播放
python - 如何处理两个事件循环? Pyrogram 和 Tkinter 的
flutter - 错误 : Member not found: 'PlatformInterfac
python - Spyder 5.1.5 内核挂起,5.2.1 无法与 conda 一起使用
debugging - A/libc : Fatal signal 11 (SIGSEGV), 代码
python - "' str ' object has no attribute ' 将 slug
amazon-web-services - 如何查看 AWS 备份库的大小?
kotlin - 如何在 Kotlin Multiplatform 中获取特定于平台的换行符?