What is React
2019-03-15 本文已影响0人
灯火葳蕤234
components(组件)
- react应用的核心是组件,组件实际上是一段用户界面代码。当我们使用react创建程序的时候,我们实际创建的是一组独立的、可重用的组件,然后将它们组合成复杂的用户界面。
- 每个react程序至少有一个组件,也就是根组件(App)。这个组件代表了整个程序,并且包含很多子组件。所以每个react程序实际上就是一个组件树。
- React Element —— DOM Element
react在内存中保持着一个轻量级的DOM元素树(React Element),这也就是我们说的虚拟DOM。不同于浏览器中真实的DOM,虚拟DOM很容易创建。 - 当我们改变一个组建的状态时,我们就得到了一个新的react元素。react会拿之前的组件和子组件与之比较,它会对比出差异,之后更新浏览器中的DOM,以确保信息保持同步。这就意味着如果使用react创建程序,不同于传统的JavaScript库比如jQuery,我们不直接操作浏览器的真实DOM元素,换句话说我们不必为了捕获DOM元素写代码,然后处理DOM的请求,只需要简单的改变组件的状态。之后react会自动检测并修改DOM以同步状态。
React And Angular
- react和Angular都是基于组件逻辑的架构。尽管如此,Angular是一个框架,或者说是完整解决方案,但react是一个库,react只关注显示部分的东西(View),并且用于确保视图始终同步。因此,react需要学习的接口很少,当以react来开发程序的时候,我们为了实现目标还要借助其他库,比如Routing,用于处理HTTP请求,等等。
一个react程序的创建
- 首先会安装一个轻量级的开发服务器,打包代码的webpack,转译器babel可以转换我们的代码,还有一些其它工具。所以当我们使用工具创建react程序的时候,不需要任何配置,所有的都配置好了。但是,如果你在生成环境中想自己配置程序,你可以通过npm run eject实现。