React 简书
create-react-app jianshu
yarn add styled-components -D 利用js写css样式 样式会更高效
|
https://github.com/chochinlu/blog/issues/126 https://blog.csdn.net/weixin_43801564/article/details/86713318 关于全局样式 原方法淘汰替代的语法 |
| -:)》》》》》为样式生成唯一的 class name. 开发者不必再担心 class name 重复,覆盖和拼写错误的问题 |
yarn add react-transiation-group 安装一个js动画效果的外包辅助工具
|
https://reactcommunity.org/react-transition-group/css-transition https://segmentfault.com/a/1190000015487495 js封装的动画库 H5 原生就是H5动画 |
| -:)》》》》》会给子级增添动画属性 ,针对包含的子级添加css样式 |
yarn add redux -D redux
yarn add react-redux -D 安装公共数据 存储对象
Redux 连贯套路
创建stroe----创建reducer ----放入store----reducer(放入action,一个状态)--------connect(给一个状态type)---------reducer(通过action.type 更改state中的数据)

无状态组件
| 里面没有任何的 状态 所有的数据都是从 props中拿到的,redux中拿到的数据和方法 |
|
const 组件 = (props)=》{ return( <BigDiv> <i >{props.data}</i> </BigDiv> ) } |
yarn add immutable -D
|
对数据进行 immutable 管理 import { fromJS } from 'immutable'; --------------------------------------------------------------------------------------------------------------------------------- reducer 设置更新数据的时候 单个 return state.set('listData',fromJS(action.data)) 多个 return state.merge({ listData:fromJS(action.data),artData:fromJS(action.data) }) ----------------------------------------------------------------------------------------------------------------------------------- /通过行内传递参数 <img imgUrl="http://123.png"/> styled 就可以通过 background:url(${(props)=>props.imgUrl}); ----------------------------------------------------------------------------------------------------------------------------------- 配合 Purecomponent 使用 :它的作用 一处修改不会页面全部重新渲染 修改哪里 重新渲染哪里 !!!!注意 只有用了 immutable 才可以使用该方法 |
路由配合单页面内跳转
首页跳转详情页 加id 动态路由配置
![]() |
动态路由 常用格式
|
|
请求完整的流程 分析图
|
字符串转移为html代码 (编辑器写入一段带HTML格式的存入了数据库,数据库拿出来用这个转为HTML代码)
| dangerouslySetInnerHTML={{__HTML:this.props.String}} |
判断显示哪一个块,显示登陆 or 注册(代码块)
|
render(){ if(true){ return(<div>登录</div>) }else{ return(<div>注册</div>) } } |
重定向Redirect
import { Redirect } from 'react-router-dom';
<Redirect to="/" />
Input ref获取表单的里面的数据

异步优化分页代码(配合withRputer)
异步
shouldComponentUpdate 底层是这个但是很麻烦 ,很繁琐
利用第三方辅助 react-loadable
|
优化异步 请求分页文件 react-loadable import React fron 'react'; const LoadableComponent = Loadable({ export default ()=> <LoadableComponent/> 放在index.js 根目录文件夹下 app.js 路由跳转 到 detail.js 的时候 先进入loadable.js 然后在 index.js 中映入 loadable 文件 ,引入包裹组件 但是原先的 router 中的 id 就会找不到 ,那么就用到withRouter 解决办法: withRouter from 'react-router-dom'; 包裹在 connect(withRouter(detail)) 原代码 来资源 react-loadable export default class App extends React.Component { |
项目打包上线
npm run build
生成文件夹 build 里面的全部文件给到 后台 XAMPP /htdocs 文件
build里面的文件全部放入,访问后台服务器 测试服务器为 127.0.0.1 本地服务器
打包空白 pack.json 添加 homepae:'./'
项目前期完整框架搭建------后期就好做多了 (填充内容)
7-1 项目目录搭建,Styled-commponents与React。
https://pan.baidu.com/s/1b7LIIh9l_VbJIjMEM9t_qA
7-2 使用 Styled-commponents完成Header组件布局(1)
https://pan.baidu.com/s/1K45oL0wjqYmbnkPhbUU0DA
7-3 使用 Styled-commponents完成Header组件布局(2)
https://pan.baidu.com/s/1e9kPIdaoqfCVqMv3hkkb8A
7-4 使用iconfont潜入字体图标 https://www.iconfont.cn/
https://pan.baidu.com/s/1PdTkiw6tWGOpli2Q92tDJQ
7-5 搜索框动画效果实现
https://pan.baidu.com/s/11gikpHUejCC0Wtescc9rzw
7-6 使用React-redux 进行应用数据的管理
https://pan.baidu.com/s/1X4ngbC4_2xP45c_tOVowVA
7-7 使用combineReducers 完成对数据的拆分
https://pan.baidu.com/s/1QG0Z6vPnEZFYg2urLhyUVQ
7-8 actionCreators.js and actionTypes.js 的封装
https://pan.baidu.com/s/1_PQ3b5ITUH6t45vdypxXSw
7-9 immutable 对存储在 {store}中的数据管理
https://pan.baidu.com/s/1QmbGDNtxCXNNeY-ObA1How
7-10 redux-immutable 对数据的统一管理
https://pan.baidu.com/s/10TIT2-__u0Va5GbY6IaylQ
React 简书的更多相关文章
- react 简书开发笔记
详见文章<React简书开发实战课程笔记>
- react简书
开发项目之前的准备 https://www.chromefor.com/ 登录此网站 下载相关crx react插件 不然要FQ 下载 React Developer Tools 谷歌插件下载 Re ...
- react简书笔记一 环境, git 和 项目 关联
1.. 建立git项目 ( 码云, github 都可以 ), 具体步骤: https://www.cnblogs.com/andy-lehhaxm/p/10720717.html 1.1 git ...
- 2. react 简书 头部(header) 图标添加
1. 访问 iconfont 并注册 登陆 2. 进入 iconfont 头部 图标管理->我的项目 3. 点击右边的文件夹 + 号 图标 创建我的项目 输入项目名称即可 4.在 搜索框 搜索 ...
- 4 react 简书 引入 redux 的 combineReducers 对 redux 数据进行管理
1. src 下的 common 下的 header 创建 store 文件夹 下创建 reducer.js # src/common/header/store/reducer.js const st ...
- 3 react 简书 添加 头部搜索动态效果
1. 添加动态效果组件 yarn add react-transition-group 2. 修改 src/common/header/index.js import React, {Componen ...
- 2. react 简书 头部 (header) 样式编写
1. 在 src 下 创建 common 文件下 创建 header 文件夹下 创建 index.js #src/common/header/index.js import React, {Compo ...
- 1. react 简书 项目初始化
1. 创建 react 项目 npx create-react-app my-app 2. src 目录下删除 除了 index.js index.css app.js 的文件 3. 引入 style ...
- iOS离屏渲染简书
更详细地址https://zsisme.gitbooks.io/ios-/content/chapter15/offscreen-rendering.html(包含了核心动画) GPU渲染机制: CP ...
随机推荐
- PHP闭包实现函数的自调用实现递归
根据pathinfo访问对应得controller,如ip:port/home/index/index则会访问home目录下的IndexController的index方法:如果不指定pathinfo ...
- settings.gradle与build.gradle有什么区别
参考回答 settings.gradle文件是gradle项目的总体配置文件,一般会把子项目中通用的一些配置放在这个文件中,有点雷士与maven的parent pom 文件. build.gradle ...
- vagrant up 时提示错误 cound not open file
根据教程:https://laravel-china.org/docs/laravel-development-environment/5.5/development-environment-wind ...
- 【怪物】KMP畸形变种——扩展KMP
问题 参考51nod1304这道题: 很显然我们要求的是S的每个后缀与S的最长公共前缀的长度之和. 暴力 假设我们把next[i]表示为第i个后缀与S的最长公共前缀的长度. 现在我们想了:这个next ...
- java方法重写规则 重载
方法的重写规则 参数列表必须完全与被重写方法的相同: 返回类型必须完全与被重写方法的返回类型相同: 访问权限不能比父类中被重写的方法的访问权限更低.例如:如果父类的一个方法被声明为public,那么在 ...
- 使用pip出现 cannot import name "main"
最近在linux使用pip install时遇到了这个报错 1.jpg ImportError: cannot import name main 遇到这个问题,我的解决办法是:cd 到usr/bin目 ...
- sql —— top
用于规定要返回的记录的数目 原表: 我们如果只想看前三个学生信息的话:
- UVALive - 4787 ICPC WF 2010 Tracking Bio-bots【dp】
UVa 4787 WF题果然不一样,本来想暴力搜索,数据太大了,数组都开不了.看题解也不太懂,记录一下书上的题解,以后再看: 此题是给出N*M的格子,有些地方是墙,不可走.求所有不能只通过向上或者向右 ...
- python 列表对象的增减
- Python 常量

