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

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

斯蒂芬大帝

如果你说的是一个离线应用,即不需要后端响应的应用,那么可以这么划分。但一般情况下我们讲MVC都是在将系统视为整体,这种情况下你说的state、prop、事件/行为都是为渲染视图这件事服务的,因此React在一个系统中只是一个V。

慕斯709654

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

相关分类

JavaScript