react 的核心思想 【声名式】Declarative 的理解

正如 react 官网首页里写的 它推崇 声明式编程,而非 命令式

那怎么样的 方式 式 声名式的呢?

举例我的理解:

需求:打开一个 Modal

例子1

命令式: Modal.open(); // 翻译:命令 modal执行:打开

声明式:<Modal open={true}>  // 翻译:声明modal的状态为:打开

例子1的理解应用:

命令式 在react中,就等于,Modal的 父组件 需要 获取Modal并且 操作 Modal的open方法,这中方式式 极力反对 

声明式 在react中,就等于,父组件 传递 props 来控制 子Modal的 状态,react 推崇的方法

例子2

命令式:操作dom 使用 jquery 去找到需要操作的 dom节点,然后 操作它

声明式:编码好 数据 与 界面的 关系,只操作 数据,不关心 具体要如何 操作 dom,把dom都交给 react

例子2的理解应用:

命令式 在react中,大部分场景 都不需要这样去操作,不过确实 有需要地方。通常 使用ref获取,例如:

  • 管理焦点,文本选择或媒体播放。
  • 触发强制动画。

声明式 在react中,这就是 再正常 不过的操作来

猜你喜欢

转载自www.cnblogs.com/zhilingege/p/11353123.html