React 是一个流行的用户界面开发库。有时,在创建 React 应用程序时,我们可能希望为某些属性设置默认设置。这就是“defaultProps”思想发挥作用的情况。
什么是defaultProps?
DefaultProps 是一个 React 特性,它允许我们为组件的属性(或 props)提供默认值。当 prop 未提供、未定义或缺失时,将使用这些默认值。需要注意的是,如果 prop 显式设置为 null,则不会应用 defaultProps。
defaultProps 的用法
在此代码中,我们有一个 Button 组件,它采用“color”属性。如果 'color' 属性未给出或未定义,defaultProps 将移入并将 'color' 属性默认设置为 'blue'。
defaultProps 的实际应用示例
如果没有提供 'color' 属性,则 Button 组件将默认设置为 'blue'。
即使我们直接将 'color' 属性设置为 undefined,defaultProps 仍然生效,给 'color' 一个默认值 'blue'。
如果我们将 'color' 属性更改为 null,defaultProps 将不会覆盖它,并且 'color' 将为 null。
如果我们为 'color' 属性给出一个值,它将被使用而不是默认值。
例子
示例 - 按钮组件应用程序
因此,我们将创建一个 React 应用程序,在其中我们将展示一个具有蓝色的按钮组件,以显示 defaultProps 的使用情况。
现在打开项目并使用代码编辑器导航到项目目录中的 src 文件夹。替换App.js文件中的以下代码 -
App.css
输出
示例 - 简单的计数器应用程序
在此应用程序中,我们将显示一个从指定的初始值(默认值为 0)开始的计数器。因此,用户可以单击一个按钮来增加计数器。这个应用程序将向我们展示如何使用静态 defaultProps 为某些属性提供默认值。此应用程序的代码如下 -
输出
示例 - Toggle Switch App
在此应用程序中,我们将提供一个可以打开或关闭的拨动开关。因此,我们将初始状态设置为 on 或 off(默认为 off)。用户可以单击一个按钮来切换开关。所以这个应用程序的代码如下 -
输出
在上面的输出中,我们可以看到有一个名为 Toggle 的按钮,因此当我们单击它时,消息将根据条件进行更改。如果消息是 Switch is OFF,那么在单击按钮后,消息将更改为 Switch is ON。
总结
defaultProps 是 React 中一个有用的功能,它改进了组件属性默认值的处理。它确保我们的组件有效运行,即使某些属性缺失或未定义。我们可以通过定义默认值来使代码更简单、更人性化。