初学react,看到元素渲染章节时,手动写了一下简单的代码,出现下面的报错:
翻译成中文: 对象不能作为React子对象使用。如果要渲染子对象的集合,请改用数组。
本意是要先获取当前系统时间渲染到通过react构建的root根节点上,出现了报错,
源代码:
import React from 'react';
import ReactDOM from 'react-dom';
const element = (
<p>{new Date()}</p>
)
ReactDOM.render(
element,
document.getElementById('root')
)
仔细对比了官方文档中的代码发现,缺少 toLocaleTimeString() 函数,于是百度,
toLocaleTimeString()方法是把Data对象转为字符串,修改之后的代码就不再报错了。
import React from 'react';
import ReactDOM from 'react-dom';
const element = (
<p>{new Date().toLocaleTimeString()}</p>
)
ReactDOM.render(
element,
document.getElementById('root')
)
正确显示时间
总结:render渲染元素到react的根节点root, 元素不能是对象,可以把对象转为字符串,或者改用数组表达。