前言
React 是一个用于构建用户界面的 JAVASCRIPT 库。
React 主要用于构建UI,很多人认为 React 是 MVC 中的 V(视图)。
React 起源于 Facebook 的内部项目,用来架设 Instagram 的网站,并于 2013 年 5 月开源。
React 拥有较高的性能,代码逻辑非常简单,越来越多的人已开始关注和使用它。单单脚手架就有传统创建单页面程序的create-react-app,有进行服务器端渲染的Next.js,还有快速创建网站的Gatsby。那就先从create-react-app开始说起。
特点
1.声明式设计 −React采用声明范式,可以轻松描述应用。
2.高效 −React通过对DOM的模拟,最大限度地减少与DOM的交互。
3.灵活 −React可以与已知的库或框架很好地配合。
4.JSX − JSX 是 JavaScript 语法的扩展。React 开发不一定使用 JSX ,但我们建议使用它。
5.组件 − 通过 React 构建组件,使得代码更加容易得到复用,能够很好的应用在大项目的开发中。
6.单向响应的数据流 − React 实现了单向响应的数据流,从而减少了重复代码,这也是它为什么比传统数据绑定更简单。
安装
create-react-app是react中最简单的创建单页面程序的方式。并且Node >= 6 ,npm >= 5.2
# 全局安装create-react-app
$ npm install -g create-react-app
# OR
$ yarn global add create-react-app
# 或 临时安装create-react-app
$ npx create-react-app my-app
创建项目
注意:如果安装后创建项目显示: D:\Program Files\nodejs\node_global\create-react-app.ps1,因为在此系统上禁止运行脚本。
- 解决办法:
- 1.win+X键,使用管理员身份运行power shell
- 2.输入命令:set-executionpolicy remotesigned
- 3.输入”Y“,回车,问题解决。
# 创建常规项目
create-react-app my-project
# 创建ts项目
create-react-app my-ts-project --scripts-version=react-scripts-ts
启动项目
这样,一个react单页面程序项目就创建好了。启动这个项目,启动之后访问http://localhost:3000/就可以打开项目了。
npm start //或者
yarn start
目录结构
my-app
│ .gitignore //git免提交文件配置文件
│ package.json //包管理文件
│ README.md //说明文档
│ yarn.lock //yarn锁定版本文件
│
├─node_modules //项目依赖
├─public //公共静态资源文件夹
│ favicon.ico
│ index.html
│ logo192.png
│ logo512.png
│ manifest.json
│ robots.txt
│
└─src //react源代码
App.css
App.js //根组件
App.test.js
index.css //样式文件
index.js //入口文件
logo.svg //logo文件
serviceWorker.js
setupTests.js
集成react-router
要想完成单页面程序的开发,需要在页面中进行页面局部刷新,加载各种子页面。这就就离不开路由。
- 安装路由
$ yarn add react-router-dom --save
- 集成到项目
在App.js中引入,并且使用
import React, { Component } from 'react';
import { BrowserRouter as Router,Route ,Link} from 'react-router-dom'
import './App.css';
// 加载组件
import List from './List'
import About from './About'
class App extends Component {
render() {
return (
<Router>
<div>
<h1>App</h1>
<ul>
<li><Link to="/list">List</Link></li>
<li><Link to="/about">About</Link></li>
</ul>
<hr/>
<Route path="/list" component={List} />
<Route path="/about" component={About} />
</div>
</Router>
);
}
}
export default App;
期待
React会开设[React从出师到挂帅]专题进行讲解,敬请期待!!!
点击下方关注我👇👇👇
往期推荐
从脚手架开始学前端 【第2期】Node.js环境搭建(windows)
从脚手架开始学前端 【第3期】Node.js环境搭建(CentOS 7)