这是我参与「第五届青训营 」笔记创作活动的第12天
本篇来了解什么是React。
React是Facebook开发的一款JS库。React一般被用来作为MVC中的V层,它不依赖其他任何的库,因此开发中,可以与任何其他的库集成使用,包括Jquery、Backbone等。它可以在浏览器端运行,也可以通过nodejs在服务端渲染。React的思想非常独特,性能出众,可以写出重复代码少,逻辑清晰的前端代码。React的语法是jsx,通过使用这种语法,可以在react代码中直接混合使用js和html来编写代码,这样代码的逻辑就非常清晰,当然也意味着,需要将jsx代码编译成普通的javascript代码,才能在浏览器中运行,这个过程根据实际项目情况,可以选择多种不同的思路,或者在服务器端通过webpack进行编译。
由于React的设计思想极其独特,属于革命性创新,性能出众,代码逻辑却非常简单。所以,越来越多的人开始关注和使用,认为它可能是将来Web开发的主流工具。
这个项目本身也越滚越大,从最早的UI引擎变成了一整套前后端通吃的Web App解决方案。衍生的React Native 项目,目标更是宏伟,希望用写Web App的方式去写Native App。如果能够实现,整个互联网行业都会被颠覆,因为同一组人只需要写一次UI ,就能同时运行在服务器、浏览器和手机。
React主要用于构建UI。你可以在React里传递多种类型的参数,如声明代码,帮助你渲染出UI、也可以是静态的HTML DOM元素、也可以传递动态变量、甚至是可交互的应用组件。
React的特点有1.声明式设计:React使创建交互式UI变得轻而易举。为你应用的每一个状态设计简洁的视图,当数据变动时React能高效更新并渲染合适的组件。2.组件化: 构建管理自身状态的封装组件,然后对其组合以构成复杂的UI。3.高效:React通过对DOM的模拟,最大限度地减少与DOM的交互。4.灵活:无论你现在使用什么技术栈,在无需重写现有代码的前提下,通过引入React来开发新功能。