提问人:Mehedi Hasan 提问时间:10/19/2023 最后编辑:user2846469Mehedi Hasan 更新时间:10/21/2023 访问量:20
为什么在控制台中返回 React 元素的内部表示而不是 React 元素本身?
Why is the internal representation of a React element returned instead of the React element itself in the console?
问:
function TestComponent(){
const test = ()=> {
return <div>
<h1 class="text-white">halo word</h1>
</div>
}
console.log(test());
return(
{test()}
)
}
在上面的组件中,我希望渲染的 div 出现在正在调用的控制台日志中,但它显示我该如何解决这个问题?test()
{$$typeof: Symbol(react.element), type: 'div', key: null, ref: null, props: {…}, …}
答:
0赞
user2846469
10/21/2023
#1
这是因为 React 使用了所谓的“虚拟 DOM”,并且它只在第二步中呈现为实际的 DOM。如果您确实需要记录实际的 DOM,请尝试使用:renderToString
import { renderToString } from 'react-dom/server';
console.log(renderToString(<div>hello</div>));
或者在您的情况下:
console.log(renderToString(test()));
评论