react基本安装与测试示例

声明式编码:只在意结果不在意过程

组件化编码:html,css,js的集合

单向数据流:vue也是单向数据流,有一个双向绑定功能。

支持服务器端编写

高效:先生成一个虚拟DOM,然后在DOM中操作,再一次性返回到真实界面

首先安装好node.js和npm

安装 Webpack:npm install -g webpack

安装对应的 loader: npm install babel-loader --save-de

安装react

$ npm install -g create-react-app $ create-react-app $ create-react-app react-dom $ cd react-dom $ npm start

安装babel

$ npm install babel -g

babel-min.js包安装

引入node-modules/babel-standalone/babel-min.js

npm install babel-standalone --save

测试:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>hello</title> </head> <body> <div></div> <!--<script src="https://www.jb51.net/js/react.production.min.js"></script>&lt;!&ndash;react核心库&ndash;&gt;--> <!--<script src="https://www.jb51.net/js/react-dom.production.min.js"></script>&lt;!&ndash;操作DOM的react扩展库&ndash;&gt;--> <!--<script src="https://www.jb51.net/js/babel.min.js"></script>&lt;!&ndash;解析JSX语法&ndash;&gt;--> <script src="https://www.jb51.net/node_modules/react/umd/react.production.min.js"></script><!--react核心库--> <script src="https://www.jb51.net/node_modules/react-dom/umd/react-dom.production.min.js"></script><!--操作DOM的react扩展库--> <script src="https://www.jb51.net/node_modules/babel-standalone/babel.min.js"></script><!--解析JSX语法--> <!--<script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script>&lt;!&ndash;react核心库&ndash;&gt;--> <!--<script src="https://cdn.staticfile.org/react-dom/16.4.0/umd/react-dom.development.js"></script>&lt;!&ndash;操作DOM的react扩展库&ndash;&gt;--> <!--<script src="https://cdn.staticfile.org/babel-standalone/6.26.0/babel.min.js"></script>&lt;!&ndash;解析JSX语法&ndash;&gt;--> <script type="text/babel"> const res = <h1>hello world!</h1> //虚拟dom jsx ReactDOM.render(res,document.getElementById('app')) //jsx语法规则 const str = 'hello world' const res = <h1>{str}</h1> //虚拟dom[jsx] jsx里要解析js代码,js代码必须写在{}里,遇到<>开头的代码以标签解析,html同名的转换html元素。 ReactDOM.render(res,document.getElementById('app')) //列表foreach let lis = []; let names = ['张一','李二','王三','赵四']; names.forEach((name,key)=>{ lis.push(<li key={key}>{name}</li>) }); const vul = <ul> {lis} </ul>; //列表map let names = ['张一','李二','王三','赵四']; const vul = <ul> { names.map((name,key)=> { return <li key={key}>{name}</li> }) } </ul> ReactDOM.render(vul,document.getElementById('app')) //原生js创建jsx var msg = 'hello'; var res = React.createElement('h1',{id:'myDiv'},msg ); ReactDOM.render(res,document.getElementById('app')) </script> </body> </html>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/25dd7cc5c762960ed9ed83614f0a2178.html