Reactjs 当我不应该在React中定义默认道具时?

Reactjs 当我不应该在React中定义默认道具时?,reactjs,Reactjs,我有一个问题,因为我找不到任何关于它的高级文章 我应该或不应该在哪里定义defaultProps 我是否也应该在utils函数中定义它 我读到丹·阿布拉莫夫告诉我,可能在未来,defaultProps会被弃用 使用某些条件(如果不是)比使用默认道具更好 在我看来,如果道具中没有值,并且在本例中使用if/else条件,那么用null值或空对象/数组定义defaultProps是没有意义的 只有一种情况,我们可以定义它——如果业务逻辑定义默认值。我认为defaultProps的想法并不坏。目前的语法

我有一个问题,因为我找不到任何关于它的高级文章

我应该或不应该在哪里定义defaultProps

我是否也应该在utils函数中定义它

我读到丹·阿布拉莫夫告诉我,可能在未来,defaultProps会被弃用

使用某些条件(如果不是)比使用默认道具更好

在我看来,如果道具中没有值,并且在本例中使用if/else条件,那么用null值或空对象/数组定义defaultProps是没有意义的


只有一种情况,我们可以定义它——如果业务逻辑定义默认值。

我认为
defaultProps
的想法并不坏。目前的语法有点像

幸运的是,现在有一种更好、更简洁的方法:

export const myComponent = (props) =>
{
  const { color = "red" } = props; // sets color to "red" if color is not defined
}

一般来说,默认道具是一种很好的方法,可以使组件可自定义,但也很容易使用,因为您不必每次都自己定义每个值。

我不认为
defaultProps
的想法不好。目前的语法有点像

幸运的是,现在有一种更好、更简洁的方法:

export const myComponent = (props) =>
{
  const { color = "red" } = props; // sets color to "red" if color is not defined
}
一般来说,默认道具是一种很好的方法,可以使组件可自定义,但也很容易使用,因为您不必每次都自己定义每个值。

这大概是因为您可以使用默认函数参数。对于给定的情况,您是否应该设置这些值与您决定如何设置它们是正交的。这可能是因为您可以使用默认函数参数。对于给定的情况,您是否应该设置这些值与您决定如何设置它们是正交的。