在react功能控件中显示日期



我所理解的是react功能组件应该是纯函数。它们不应该调用任何不纯净的函数,例如Date((。但是这个代码到底有什么问题呢?

import React from 'react';
export default ({ name }) =>  <p>Today is {Date()}</p>  

React功能组件不需要纯度(确切意义上(。文档实际说明的内容是:

所有React组件在其道具方面都必须像纯函数一样工作

当然,应用程序UI是动态的,并且随着时间的推移而变化。在下一节中,我们将介绍"状态"的一个新概念。State允许React组件随着时间的推移更改其输出,以响应用户操作、网络响应和其他任何事情,而不违反此规则。

您的示例函数不使用任何道具,而且它绝对不会改变任何道具,因此(根据React对纯度的定义(它是一个纯函数。

最新更新