react中没有双向绑定;react的设计思想就是单向数据流,没有双向绑定的概念;react是view层,单项数据流只能由父组件通过props将数据传递给子组件,满足了view层渲染的要求并且更易测试与控制,所以在react中没有双向绑定。
本教程操作环境:Windows10系统、react17.0.1版、Dell G3电脑。
react没有双向绑定
React的设计思想是单向数据流,我觉得可以这样理解为什么没有双向数据绑定:
首先, React是纯粹的View层;
然后,对于React来说双向数据绑定是什么需求? -- 明显是业务需求。因为单向数据流已经满足了 View 层渲染的要求并且更易测试与控制(来自 Props 或 State),所以在纯粹的 React 中怎么会需要双向数据绑定这种功能呢。
如果需要解决双向数据绑定问题,可以借助第三方库如 Ant Design 的 rc-form 之类,你也可以存在 State 里甚至是 Redux 里,根据需求来吧。
所以 React 没有双向数据绑定不是功能的缺失或冲突问题,而是 React 只关注解决纯粹的问题: View 层。
单向数据流
单向数据流是指数据的流向只能由父组件通过props将数据传递给子组件,不能由子组件向父组件传递数据,要想实现数据的双向绑定,只能由子组件接收父组件props传过来的方法去改变父组件的数据,而不是直接将子组件的数据传递给父组件。
在react中其实是没有双向绑定的概念,每次更新页面和值都需要我们自己去调用指定的api来触发,而在vue中只需要使用v-model指令就可以完全实现,在vue中的指令其实也是使用了几个事件的语法糖来实现。
推荐学习:《react视频教程》
以上是react有没有双向绑定的详细内容。更多信息请关注PHP中文网其他相关文章!