为什么说React只是MVC中的V?

发布于 2022-09-11 16:45:38 字数 265 浏览 18 评论 0

为什么很多人认为React只是MVC中的V?
我的理解有如下3点:
1.react中的jsx,包括其中的渲染逻辑,可以看作V,连同其背后的render/diff,负责组件的渲染
2.react组件本身的state和prop,也可以看作M,负责组件的数据状态,M并不仅限于组件树共享的state
3.组件本身封装的事件/行为,也可以是认为C,负责设置和改变数据,C并不仅限于redux的action
因此,在未接入redux的情况下,单个的功能型组件,其本身也可以看作一个局部的MVC模型

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

ヅ她的身影、若隐若现 2022-09-18 16:45:38

MVVM 中的 ViewModel,并不是一个简单的V

把回忆走一遍 2022-09-18 16:45:38

React被认为是视图层的框架是因为它是基于组件的,一切都是组件,而组件就是渲染页面的基础,不论组件中包含的jsx,methods,state,props,都是属于组件内部的。而你说React中的state和prop可以被看作M,其实是错的,因为React本身没有状态管理的概念,这也是为什么会有Redux这类东西存在,因为React本身没法处理各个组件的数据交互,毕竟它只是V层。

逆光下的微笑 2022-09-18 16:45:38

如果你说的是一个离线应用,即不需要后端响应的应用,那么可以这么划分。

但一般情况下我们讲 MVC 都是在将系统视为整体,这种情况下你说的 stateprop事件/行为 都是为 渲染视图 这件事服务的,因此 React 在一个系统中只是一个 V

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文