【发布时间】:2020-03-10 16:58:51
【问题描述】:
我正在使用 React 构建一个项目,并且遇到了一个我不知道如何解决的问题,因为它在概念上超出了我的能力范围。
在我的项目中,我将 JavaScript Date 对象作为道具传递给组件。
然后我将这些数据作为状态存储在组件中。
然后使用该日期状态来更新时间线栏,这显然需要是当前的时间线才能进行。
代码的简化版本如下:
日期组件文件:
class DateComponent extends Component{
constructor(props){
super(props);
this.state = {
start: new Date(this.props.start)
}
render() {
return (
<div data-custom-attr={this.state.start}></div>
)
}
}
传递道具:
<DateComponent
start={new Date()}
/>
在我完成的项目中,我将渲染一些 HTML,如下所示:
<div data-custom-attr="date-string"></div>
无论如何我可以得到它,以便如果我随后构建 React 项目,如果我想用新日期更新 data-custom-attr,或者让它使用纯 JavaScript 返回当前日期,它将执行在 react 环境中所需的操作?
【问题讨论】:
-
"让它返回当前日期"你希望它多久更新一次?
-
我想让它返回我们所在的当天
-
无论何时安装该组件,它都会计算日期。我不清楚为什么你也存储在状态中。您是否有其他功能可以更新该状态?您遇到的具体问题是什么?
-
我同意@jmargolisvt。
Props将在每次加载您的 react web 应用程序时初始化/创建,所以我认为不必担心您的日期,因为您正在考虑页面将显示的当天用户的浏览器。
标签: javascript reactjs state