摘要: redux-thunk redux-thunk是redux中的一个中间件 安装命令 yarn add redux-thunk 在store文件夹中的index.js中引入applyMiddleware,这样我们才能使用中间件 然后再引入redux-thunk 并在createStore中使用appl 阅读全文
posted @ 2019-09-05 17:26 Byhua 阅读(483) 评论(0) 推荐(0) 编辑
摘要: redux中发送异步请求 react项目中初始化数据一般在componentDidMount这个生命周期函数中进行 我们没有后台接口,可以使用mockjs来拦截请求。 这边详细的mockjs不做讲解,大家可以自行查看文档。 mockjs yarn add mockjs 安装mockjs 在src目录 阅读全文
posted @ 2019-09-05 11:23 Byhua 阅读(1795) 评论(0) 推荐(0) 编辑
摘要: ###如何拆分ui组件和容器组件 ui组件-傻瓜组件-页面渲染 容器组件-聪明组件-页面逻辑 我们现看看原来组件 /** * 组件就是一个需要借书的人,通过 dispatch 传达 action (书名)给图书管理员(store) */ import React, { Component, Frag 阅读全文
posted @ 2019-09-04 16:17 Byhua 阅读(704) 评论(0) 推荐(0) 编辑
摘要: ###什么是生命周期函数 组件中在某个阶段会自动执行的函数。 比如我们执行使用render函数,在prop或者state变化时,render函数自动执行。 因此render函数就是一个生命周期函数。 constructor在组件创建的时候也会自动调用。但是他不是react独有,是es6中的函数所以, 阅读全文
posted @ 2019-09-03 16:15 Byhua 阅读(4220) 评论(0) 推荐(0) 编辑
摘要: 使用 antd, react, redux,creat-react-app搭建todo-list升级版本 redux简介 redux是一个配合react视图层框架使用的数据层框架 方便大型react项目之中的复杂组件传值 耦合性高的数据使用redux管理 redux中包含 组件,store,redu 阅读全文
posted @ 2019-09-03 15:20 Byhua 阅读(382) 评论(0) 推荐(0) 编辑
摘要: 什么是虚拟DOM react数据变化页面同步渲染的逻辑,这里分析三种逻辑。 先有数据 (state) 模版(render中的jsx) 数据 + 模版 = 生成真实Dom,来显示 state 发生改变 数据 + 模版 = 生成真实Dom,替换原有的DOM 缺陷: 第一次生成真实dom,第二次又生成一个 阅读全文
posted @ 2019-08-20 14:28 Byhua 阅读(898) 评论(0) 推荐(0) 编辑
摘要: 声明式开发 命令式开发:原生js和jq写代码的时候,大部分代码都是在操作dom,这种开发模式就是命令式开发。 声明式开发:react是面向数据编程,不需要直接去控制dom,你只要把数据操作好,react自己回去帮你操作dom,可以节省很多操作dom的代码。这就是声明式开发。 可以和其他框架并存 re 阅读全文
posted @ 2019-08-19 17:45 Byhua 阅读(3300) 评论(0) 推荐(0) 编辑
摘要: 代码优化 今天我们通过es6语法,以及react新特性来优化我们的todo-list 顺带解决上个版本的key报错问题 使用es6的解构赋值优化代码 当我们需要一个对象某个属性的时候,我们可以使用解构赋值,这样在后续的代码就不需要通过原对象不停调用属性去获取了 const = this.props 阅读全文
posted @ 2019-08-17 09:35 Byhua 阅读(202) 评论(0) 推荐(0) 编辑
摘要: todolist组件的拆分 之前我们做的todolist,他只有一个组件。就是App.js组件。 其实我们可以将input框,按钮都拆分成一个组件,每一个li也可以分成一个组件去渲染。 现在我们尝试将每一个li拆成一个组件去渲染。 第一步:在src目录下创建一个item.js 代码如下 import 阅读全文
posted @ 2019-08-16 18:23 Byhua 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 安装create-react-app脚手架 npm install -g create-react-app 创建你的todo-list项目 create-react-app todo-list 注意npm命名限制,项目名称不能含有大写字母。 清除项目中不必要的文件 src目录中的:App.css, 阅读全文
posted @ 2019-08-16 15:33 Byhua 阅读(574) 评论(0) 推荐(0) 编辑