react-01为什么react是典型的FP?ReactView = render(data) 怎样以FP的方式理解?

118 阅读1分钟

函数式编程的特性:

1、数据不可变(Immutable)

  • 在React中,强调一个组件不能去修改传入的prop值,也是遵循Immutable的原则;
  • 在Redux中,更是强调Immutable的作用,每个reducer不能够修改state,只能返回一个新的state

2、纯函数

  • 在React中,组件的render函数应该是一个纯函数,只有这样组件渲染的结果才只和 state/props 有关系,遵循[公式]这个公式;
  • 在Redux,reducer 必须是一个纯函数,也是函数式编程的要求

另外 React 官网也说 React 可以使用声明式编写UI,让你的代码更加可靠,且方便调试。

以及函数式组件,hooks,都是函数式编程的体现。