开发项目之前的准备

https://www.chromefor.com/  登录此网站 下载相关crx react插件 不然要FQ

下载 React Developer Tools 谷歌插件
下载 Redux DevTools 插件

npm install axios  // 安装axios

npm install --save styled-components  安装 css.js

npm install react-transition-group --save 安装动画插件

npm install --save redux 安装redux 

npm install --save react-redux 安装react-redux 方便在react中使用redux

npm install --save-dev redux-devtools-extension  增加Redux-DevTools调试

npm install immutable  用来辅助state的 不改变state的原始值

npm install redux-immutable 用来进阶辅助 不改变state的原始值

npm install redux-thunk  安装redux 中间件 用来发送请求

npm install --save react-router-dom  安装路由

npm install react-loadable --save  异步加载组件

安装 react 脚手架
npm install -g create-react-app

然后创建一个 目录

create-react-app '项目名称'

精简目录

在src下 创建store

index.js中

reducer.js中

在App.js 中 将store 与所有组件进行关联 (

react-redux 的作用

)

组件中如何连接

增加Redux-DevTools调试

辅助不改变state的值

进阶state写法

然后就是 store的拆分.

大笔记本

index

reducer

各个小笔记本

index

reducer

actionCreators

const

header页面

// 请求 axios 所以不能用无状态组件

先安装 redux-thunk

npm install redux-thunk

配置

下面是官网

引入路由

//性能调优  防止因redux改变 底部组件重复渲染 在用了 immutable的前提下没有坑 所有的Component都改成PureComponent

如果没有用的话 性能调优就需要用到

shouldComponentUpdate 来做存储对象是否变化 的判断 是否重新渲染
 
 

react简书的更多相关文章

  1. react 简书开发笔记

    详见文章<React简书开发实战课程笔记>

  2. react简书笔记一 环境, git 和 项目 关联

    1.. 建立git项目  ( 码云, github 都可以 ), 具体步骤: https://www.cnblogs.com/andy-lehhaxm/p/10720717.html 1.1  git ...

  3. React 简书

    create-react-app   jianshu yarn add styled-components -D       利用js写css样式  样式会更高效 https://github.com ...

  4. 2. react 简书 头部(header) 图标添加

    1. 访问 iconfont 并注册 登陆 2. 进入 iconfont 头部 图标管理->我的项目 3. 点击右边的文件夹 + 号 图标 创建我的项目 输入项目名称即可 4.在 搜索框 搜索 ...

  5. 4 react 简书 引入 redux 的 combineReducers 对 redux 数据进行管理

    1. src 下的 common 下的 header 创建 store 文件夹 下创建 reducer.js # src/common/header/store/reducer.js const st ...

  6. 3 react 简书 添加 头部搜索动态效果

    1. 添加动态效果组件 yarn add react-transition-group 2. 修改 src/common/header/index.js import React, {Componen ...

  7. 2. react 简书 头部 (header) 样式编写

    1. 在 src 下 创建 common 文件下 创建 header 文件夹下 创建 index.js #src/common/header/index.js import React, {Compo ...

  8. 1. react 简书 项目初始化

    1. 创建 react 项目 npx create-react-app my-app 2. src 目录下删除 除了 index.js index.css app.js 的文件 3. 引入 style ...

  9. iOS离屏渲染简书

    更详细地址https://zsisme.gitbooks.io/ios-/content/chapter15/offscreen-rendering.html(包含了核心动画) GPU渲染机制: CP ...

随机推荐

  1. Mango 基础知识

    1 mongdb和python交互的模块 pymongo 提供了mongdb和python交互的所有方法 安装方式: pip install pymongo 2 使用pymongo 1. 导入pymo ...

  2. SkylineGlobe7.0.1版本 支持SQLite(*.sqlite;*.db)数据库

    SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 ...

  3. rocketmq 4.4部署安装

    官网下载:rocketmq-all-4.4.0-bin-release.zip 准备环境:centos7.6 Maven Java8+ 操作: 在工作目录中进行如下操作: /home/software ...

  4. jdbc,mybatis,hibernate各自优缺点及区别

    先比较下jdbc编程和hibernate编程各自的优缺点.    JDBC:    我们平时使用jdbc进行编程,大致需要下面几个步骤:    1,使用jdbc编程需要连接数据库,注册驱动和数据库信息 ...

  5. webpack2.0 css文件引入错误解决及图片输出在根目录配置问题

    webpack引入css文件,main.js内容如下 import Vue from 'vue'; import App from './App.vue'; import Mint from 'min ...

  6. js对内容进行编码(富文本编辑器使用居多)

    escape(string)函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串. 使用unescape(string) 对 escape() 编码的字符串进行解码.

  7. kubernetes-kubeadm自动生成的证书过期的解决方法

    拉取kubernetes的源码: git clone https://github.com/kubernetes/kubernetes.git 切换版本: cd kubernetes &&am ...

  8. CF95C Volleyball

    题意翻译 给出一个图,双向边,边上有权值代表路的距离,然后每个点上有两个值,t,c,t代表能从这个点最远沿边走t,且不能在半路下来,花费是c 现在告诉你起点终点,问最少的花费 点个数1000,边个数1 ...

  9. pymongo 操作

    python 操作 mongoDB 模块 pymongo 安装方法 sudo pip3 install pymongo 操作步骤 1. 创建数据库连接对象 conn = pymonge.MomgoCl ...

  10. magento2 - Invalid credentials for 'https://repo.magento.com/packages.json', aborting.

    错误如下: 登陆:https://developer.magento.com/找到路径-创建公钥与私钥: Developer Portal -> My Access Keys -> Cre ...