javascript - 设置道具默认值的最佳方法是什么?
问题描述
我的应用程序中有一些从减速器选择器收到的道具。
我想知道,我应该在下面提到的所有地方为道具设置默认值吗?
- 在 defaultProps
- 在减速机中
- 在选择器中
或者我应该只在这 3 个位置中的 1 个定义默认值,为什么?
解决方案
建议只在一处设置默认值。因为如果它设置在一个地方,你就不必在不同的组件、选择器等中一次又一次地打扰。这也将避免由于默认值而导致的错误。
- 在 defaultProps:如果您设置 defaultProps,如果 prop 用于多个组件,您最终将在多个组件中设置默认值。如果您错过,则 UI 上显示的结果不一致。
- 在选择器中:如果您在多个选择器中使用来自商店的相同道具,则必须在返回结果之前设置默认值。再次不是一个好方法。
- 在 reducer 中:这是道具将在商店中设置的地方。一旦您设置了默认值,它将在所有组件、选择器中使用而无需任何更改。
我认为,考虑到可扩展的应用程序,在 reduce 中设置看起来更有前途和稳定的方法。
推荐阅读
- postgresql - Nestjs中的Postgresql不能使用可变时间
- ruby - Ruby Hash 默认值 {} vs hash.new
- python - 在另一个数据帧中测试一个数据帧
- javascript - CSS+ HTML + JAVA - 添加链接到语言选项/组合框
- curl - 如何从谷歌 api 获取令牌?
- javascript - CSS 气泡云
- python - 如果与之前和之后的差异太大,则丢弃值 - Pandas
- r - AWS SAM Lambda 附加运行时层而不构建运行时(CustomMakeBuilder 异常)
- angular - Angular Schematics 与库
- reporting-services - SSRS - 组合图?