全局安装react脚手架工具
首先全局进行安装:cnpm install create-react-app -g 查看是否安装完成:create-react-app
创建react项目:create-react-app <项目名>
如果create-react-app出现如下错误时:
1.//换源 npm config set registry https://registry.npm.taobao.org
2.//配置后通过以下方法验证是否成功 npm config get registry
react的render方法:
对于组件而言:
创建时执行
state发生变化
props发生变化执行
forceUpdate
对于整个项目而言:
创建时执行
setState
forceUpdate
1.state props 数据
2.jsx 模板
3.数据+模板结合。生成真实的DOM。显示在页面中
4.setState 发生变化
5.数据+模板结合。生成真实的DOM。替换原有的DOM
缺点:
第一次创建完整的真实的DOM
第二次创建完整的真实的DOM,替换原有的DOM
1.第二次创建真正dom性能消耗非常高
2.替换dom性能消耗非常高
1.state props 数据
2.jsx 模板
3.数据+模板结合。生成真实的DOM。显示在页面中
4.setState 发生变化
5.数据+模板结合。生成真实的DOM。不进行替换原有的DOM
6.新的dom和原来dom进行比对,找到差异。(消耗性能)
7.只替换发生变化的dom。
缺点:
性能提升并不明显
虚拟dom的概念:
1.state props 数据
2.jsx 模板
3.数据+模板结合,生成虚拟dom(js对象)。
jsx模板 <div className="App"><span>hello world</span></div>
createElement
虚拟dom(js对象)['div', {className: 'App'}, ['span', null, 'hello world']]
生成真实DOM
4.生成真实的DOM。显示在页面中
5.setState 发生变化
6.数据+模板结合。生成虚拟dom
['div', {className: 'App'}, ['span', null, 'hello react']]
7.原来的虚拟dom和新的虚拟dom,进行比较找到差异。(diff算法,同级比较)
8.只替换发生变化的dom。
优点:
1.提升了性能
2.可以跨平台,有了React Native
 

package.json配置项

{
"name": "react-app",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^16.4.2",
"react-dom": "^16.4.2",
"react-scripts": "1.1.4"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
}

index.html

<link rel="manifest" href="%PUBLIC_URL%/manifest.json"> //有利于搜索引擎搜索,manifest.json配置

<noscript>没有引入js</noscript>当项目没有引入js文件时显示页面上

react安装极其了解的更多相关文章

  1. npm+webpack+babel+react安装

    npm+webpack+babel+react安装 1.首先要安装 Node.js, Node.js 自带了软件包管理器 npm 2.在项目文件目录下生成package.json # 进入项目目录$ ...

  2. react安装 项目构建

    1.nodejs安装 下载安装包,解压.如果是已编译文件,在/etc/profile中设置PATH(/etc/profile文件中的变量设置,所有用户可用,但需求重启服务器),并source /etc ...

  3. React 安装

    1.安装 node  8.0以上 node -v npm -v 2.安装淘宝镜像 cnpm npm install -g cnpm --registry=https://registry.npm.ta ...

  4. React安装React Devtools调试工具

    在运行一个React项目的时候浏览器控制台会提醒你去安装react devtools调试工具. Download the React DevTools for a better development ...

  5. React安装 脚手架create-react-app安装步骤及问题

    create-react-app 是来自于 Facebook的脚手架,通过该命令我们无需配置就能快速构建 React 开发环境. 安装步骤: 1.先装脚手架     PS:第一次装直接在打开CMD默认 ...

  6. React安装及使用

    学习React之前.你可能需要学习: Html5.Css3.React.Antd.js. Html5的学习网站:http://www.w3school.com.cn/ Css3学习网站:http:// ...

  7. react安装

    1. npm install -g create-react-app 2. create-react-app my-app 3. cd my-app npm start 4.浏览器打开  http:/ ...

  8. React&Webpack 环境安装

    react的安装依赖nodejs,nodejs安装下载可从http://nodejs.org/en/下载 1.   环境安装 1.1      创建lib目录 cd E:\ReactLib 1.2   ...

  9. React组件安装使用和生命周期函数

    React安装在使用react时 需要安装 两个模块 react react-dom 初始化时 需要用到react-dom中的render方法 具体如下: import ReactDOM from & ...

随机推荐

  1. 阿里云服务器 linux 怎么安装php(PHPSTUDY)开发环境

    1.首先登录行云管家(https://yun.cloudbility.com/login.html) wget -c http://lamp.phpstudy.NET/phpstudy.bin //下 ...

  2. sql 更新 批量更新 更新得到主键

    import org.springframework.dao.InvalidDataAccessApiUsageException; import org.springframework.jdbc.c ...

  3. 读书笔记 - 《梦想与浮沉:A股十年上市博弈》

    拿到这本书是个很偶然的事件.有几本软件业书由于太老已经绝版,偶然想到小区的图书馆自动借阅机和读者证的预借功能,就兴冲冲的跑去尝试.没想到预借只能在网页上进行,就随手从机器里借了这本书.没想到细观之下让 ...

  4. 非局部均值去噪(NL-means)

    非局部均值(NL-means)是近年来提出的一项新型的去噪技术.该方法充分利用了图像中的冗余信息,在去噪的同时能最大程度地保持图像的细节特征.基本思想是:当前像素的估计值由图像中与它具有相似邻域结构的 ...

  5. python入门之socket代码练习

    Part.1 简单的socket单次数据传输 服务端: #服务器端 import socket server = socket.socket() # 声明socket类型,同时生成socket连接对象 ...

  6. CONCAT substr group_concat find_in_set

    (SELECT p.*,(SELECT CONCAT(m.name,m.id) FROM service_fastfix_category m WHERE m.id=SUBSTR(p.id,1,4)) ...

  7. 6 - 编码解码器-一种channelHandler

    6.1 解码器 6.1.1 抽象类-ByteToMessageDecoder decode(ChannelHandlerContext ctx, ByteBuf in, List<Object& ...

  8. SpringBoot | 第十章:Swagger2的集成和使用

    前言 前一章节介绍了mybatisPlus的集成和简单使用,本章节开始接着上一章节的用户表,进行Swagger2的集成.现在都奉行前后端分离开发和微服务大行其道,分微服务及前后端分离后,前后端开发的沟 ...

  9. DB2常用函数详解

    (一) 字符串函数 VALUE函数  语法:VALUE(EXPRESSION1,EXPRESSION2) VALUE函数是用返回一个非空的值,当其第一个参数非空,直接返回该参数的值,如果第一个参数为空 ...

  10. angular 学习笔记(3) ng-repeat遍历json并且给样式

    视图: <div ng-app="myapp" ng-controller="myctrl"> <ul> <li ng-repea ...