React的特点
声明式编程
写UI就和写普通的HTML一样,抛弃命令式的繁琐实现
组件化编程
组件是react中最重要的内容,组件可以通过搭积木的方式拼成一个完整的页面,通过组件的抽象可以增加复用能力和提高可维护性
跨平台
React Native编写原生应用
React Native (简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的JS框架 React 在原生移动应用平台的衍生产物
高效 (优秀的Diffing算法)
数据变化后,React 概念上与点击“F5刷新”按钮类似,但仅会更新变化的部分。(diff/fiber最小粒度)
配置环境
CDN引入
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><!-- 引入react依赖库,注意顺序--><script src="lib/react/react.development.js"></script><script src="lib/react/react-dom.development.js"></script><!-- 引入babel库,用于解析jsx语法# https://www.babeljs.cn/setup#installation--><script src="lib/react/babel.min.js"></script></head><body><div id="root"></div>// 这里不是原生的javascript语法,而是特殊的jsx(javascript+xml)语法,需要用babel解析.<script type="text/babel">var msg = 'hello,world!';// 使用es6 class 通过继承可以得到一个react组件的类class HelloWorld extends React.Component {render(){return (<div>{msg}</div>)}}// 通过调用React自身方法render可以得到当前组件的实例对象,并渲染到页面容器.ReactDOM.render(<HelloWorld />,document.getElementById('root'));</script></body></html>
实例中引入了三个库: react.production.min.js 、react-dom.production.min.js 和 babel.min.js:

