1 React简介

2013年由Facebook推出,代码开源,函数式编程、目前使用人数最多的前端框架、健全的文档与完善的社区。

官网:reactjs.org

阅读文档:官网中的Docs

React 16 以上的版本称为React Fiber

2 React开发环境准备与工程目录简介

1)开发环境搭建

1⃣️引用js文件来使用react  ——大项目中,性能较低,可维护性较差

2⃣️通过脚手架工具来编码 ——脚手架可以自动构建一个大型项目的开发流程和目录,允许以一定的方式来实现js相互引用;可以使用grunt/gulp/webpack来辅助编写脚手架;

推荐使用官方脚手架工具Create-react-app

脚手架安装:

node.js——脚手架运行环境(nodejs.org);LTS稳定版/Current尝鲜版;

在命令行中运行node -v 或 npm -v,如果都出现了版本号,证明node和node包管理工具都已经安装成功。

macdeAir:~ mac$ node -v

v10.16.3

macdeAir:~ mac$ npm -v

6.9.0

安装脚手架

点击react官网页面上的Get Started按钮 ——> Create a New React App ——> Create React App

页面中有3条命令,依次执行它们

npx create-react-app my-app
cd my-app
npm start

注:执行命令前先进入桌面目录

    mac: cd Desktop

    windows 在桌面上按住shift点击鼠标右键,会出现一个菜单——在当前目录运行命令行工具

  第一条命令:使用create-react-app工具创建一个名为my-app的项目

  第三条命令:运行项目环境,会自动打开一个网页     

2)工程目录介绍

1⃣️解压my-app压缩包,解压后的代码不能直接运行,因为缺少node modules文件夹

2⃣️在命令行工具中打开项目,进入项目目录下,运行yarn install命令,node modules就安装好了

yarn是什么意思?        

项目中有一个yarn.lock文件,项目的依赖需要通过yarn命令来安装;

如果项目中没有yarn.lock文件,就要运行npm install命令来安装

3⃣️通过npm start命令或yarn start命令来运行项目

4⃣️项目中的一些文件介绍

yarn.lock文件

放置的是项目所依赖的第三方模块的相关信息,包含确切的版本号,不要随意更改

README.md文件

项目中全部的说明,可以把默认的说明去掉,换成自己项目的说明

Package.json文件

整个工程的一些配置信息或说明,包括第三方模块相关信息、可以执行的命令(scripts)、代码校验配置(eslintConfig)、项目支持的浏览器信息(browserslist)等

npm start = npm run start

npm build ≠ npm run build ,用来进行对项目的打包

.gitignore文件

不想传到git上的文件配置到这个文件里

node modules目录

项目依赖的所有第三方模块都放在这里,运行yarn install或npm install后自动生成的,不要自己随意更改

public目录

 -favoicon.ico文件

  标题栏上的小图标,可以换成自己的(网上搜索如何制作ico图片)  

 -index.html文件

  项目html入口

 -manifest.json文件

  PWA技术,项目中暂时不使用,忽略或删除即可   

src目录(*****项目的核心,放置项目的源代码*****)

 -index.js文件

  项目入口js文件;

  项目初始化时就已经安装了react和react-dom第三方模块,在index.js中可以直接使用import导入进来;

  使用webpack实现在该文件中通过import引入index.css文件,可选

  import引入App(App.js)

  import引入serviceWorker(serviceWorker.js),可选

  App.js帮助生成页面内容,还需要通过index.js中的ReactDOM.render()这行代码,将内容挂载到页面上

 -index.css文件

  index.js中引入的css文件

   -App.js文件

  import引入了react、component

  import引入了logo.svg,可选

  import引入了App.css,可选

  负责渲染页面内容!

   -App.test.js文件,可选

  项目的自动化测试文件

   -App.css文件,可选

  页面的css效果

 -serviceWorker.js文件,可选

  帮助实现PWA的一些功能,不用时可以忽略或删除

 -logo.svg文件,可选

  项目中用到的svg图片

React笔记01——React开发环境准备的更多相关文章

  1. 零基础Android学习笔记-01 安卓开发环境搭建

    安卓开发环境搭建. 1.首先准备JDK,从官网找到JDK下载地址,原来做.NET不熟悉JAVA,干脆用最新的,下载了JDK 1.7的版本.原来装过1.5还要配置环境变量什么的.但1.7好像很给力,装好 ...

  2. react + react-router + less +antd 开发环境

    react + react-router + less +antd 开发环境搭建 1.基于create-reacte-app,需要先安装这个脚手架,然后初始化项目. 2.进入项目目录,首先 npm r ...

  3. Hadoop学习笔记(4) ——搭建开发环境及编写Hello World

    Hadoop学习笔记(4) ——搭建开发环境及编写Hello World 整个Hadoop是基于Java开发的,所以要开发Hadoop相应的程序就得用JAVA.在linux下开发JAVA还数eclip ...

  4. React Native 之 搭建开发环境

    现在只能在MAC系统上安装. 1. 首先,HomeBrew 这是一个包管理库,用来下载其它工具. 打开网站:brew.sh 网页有个命令 /usr/bin/ruby -e "$(curl - ...

  5. 从零开始配置TypeScript + React + React-Router + Redux + Webpack开发环境

    转载请注明出处! 说在前面的话: 1.为什么不使用现成的脚手架?脚手架配置的东西太多太重了,一股脑全塞给你,我只想先用一些我能懂的库和插件,然后慢慢的添加其他的.而且自己从零开始配置也能学到更多的东西 ...

  6. React Native之配置开发环境

    安装前注意: 1)在Max OS X 10.11(El Capitan)版本中,homebrew在安装软件时可能会碰到/usr/local目录不可写的权限问题.可以使用下面的命令修复: sudo ch ...

  7. React + webpack 快速搭建开发环境

    因网上大多React + webpack快速搭建的运行不起来,便自行写了一个.在搭建开发环境的前需安装nodejs,npm. 新建一个工作目录,比如叫reactdome,在reactdome目录中运行 ...

  8. 如何从零搭建一个webpack+react+redux+react-redux的开发环境一入门

    阅读本文章的时候,你要有一定的基础知识储备,简单的es6知识,模块化思想知识,js基础知识,node基础知识,react等 首先执行npm init,此时我的文件叫case; 下面安装一些需要的npm ...

  9. JavaSE 学习笔记01丨开发前言与环境搭建、基础语法

    本蒟蒻学习过C/C++的语法,故在学习Java的过程中,会关注于C++与Java的区别.开发前言部分,看了苏星河教程中的操作步骤.而后,主要阅读了<Java核心技术 卷1 基础知识>(第8 ...

随机推荐

  1. PROD异机全备份恢复验证实施文档

    PROD异机全备份恢复验证实施文档 ******利用10月25日的全量备份.10月26日当天的归档日志及当前redo日志,恢复数据库到故障前数据库状态****** 准备工作:source 源库:PRO ...

  2. 【转】mackbook wifi卡死未响应的问题

    原文:http://tieba.baidu.com/p/6140144143?traceid= 1. wifi未响应了,紧急处理法:打开活动监视器,搜索airportd,结束掉进程 2. 彻底解决办法 ...

  3. 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第4节 ArrayList集合_16-ArrayList练习一_存储随机数

    循环6次就是6.fori 循环子在外部+1就是得到的1到33的数字 list.fori遍历集合 自动生for循环的代码

  4. 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第8节 Math类_19_Math练习:小学数学真题

    题目 画数轴 解题思路 强转成int类型就会舍弃小数位数 输出最终的数量 如果用Math.ceil的方式的话

  5. 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_04 数据结构_2_数据结构_队列

    先进先出 队列 队列:queue,简称队,它同堆栈一样,也是一种运算受限的线性表,其限制是仅允许在表的一端进行插入, 而在表的另一端进行删除. 简单的说,采用该结构的集合,对元素的存取有如下的特点: ...

  6. postman的断言/环境变量的处理

    我们做接口测试都会有一个断言操作:也有一个变量被频繁使用,这时候可以用环境变量来处理 目录 1.postman之断言 2.postman之环境变量 1.postman之断言 同样以postman的登录 ...

  7. Java基础/利用fastjson反序列化json为对象和对象数组

    利用fastjson反序列化json为对象和对象数组 利用 fastjosn 将 .json文件 反序列化为 java.class 和 java.util.List fastjson 是一个性能很好的 ...

  8. ElasticSearch 基础 1

    ElasticSearch 基础=============================== 索引创建 ========================== 1. RESTFUL APIAPI 基本 ...

  9. docker搭建一个渗透测试环境 bwapp为例

    bwapp是一个渗透测试靶场,他其中中含有100多个Web漏洞  基本涵盖了所有主要的已知Web漏洞,包括OWASP Top 10的各种 首先要去搜索一下  看一下有哪些镜像可以下载    docke ...

  10. SpringMvc参数绑定出现乱码解决方法

    在SpringMvc参数绑定过程中出现乱码的解决方法 1.post参数乱码的解决方法 在web.xml中添加过滤器 <!-- 过滤器 处理post乱码 --> <filter> ...