Vue中单向数据流的原因是什么

来源:3-5 vue父子组件如何通讯

李谌

2022-06-16

老师好,vue中子组件想要修改父组件的内容,是由子组件来触发父组件的事件,让父组件自己修改自己,本质上应该还是体现的单向数据流。

我的想法是,子组件能否认为是父组件的扩展?从设计模式的角度看,对修改封闭,对扩展开放。因此,修改父组件中的内容,仍要利用父组件自身的方法对父组件进行修改。这样解释对吗?

如果子组件可以任意对父组件进行修改,最大的问题是什么?

谢谢老师!

写回答

1回答

双越

2022-06-17

不是 Vue 这样,React 也这样,所有的软件设计都会倾向于这样 —— 像你说的,这是设计模式的角度看待问题。

其实严格来说不叫“单项数据流”,而应该叫“数据提升”。即数据统一提升到父组件来管理和修改,子组件只负责根据数据的变化渲染 view 即可。

如果子组件可任意修改,那肯定会造成混乱,不统一。严格来说,数据在哪里存放,就要在哪里管理,别处无权关心。

1
3
qq_w_354
好像明白了,但是有那么一丢丢的水
2024-04-05
共3条回复

前端框架及项目面试 聚焦Vue3/React/Webpack

面向1-3年前端的框架及项目面试“刚需内容”

4695 学习 · 1667 问题

查看课程