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 ...
随机推荐
- iView3.x Anchor(锚点)组件 导航锚点
iView3.x Anchor(锚点)组件 导航锚点 iview 3.x框架中新添了一个Anchor(锚点组件),用这个组件去做页面的分类导航正好合适,但是苦于官方文档太过抽象研究了一整天,才勉强可以 ...
- linux系统命令配置文件
系统命令要独占地控制系统,并让一切正常工作.所有如 login(完成控制台用户身份验证阶段)或 bash(提供用户和计算机之间交互)之类的程序都是系统命令.因此,和它们有关的文件也特别重要.这一类别中 ...
- python 正确地初始化对象
- oralce系统触发器
系统事件是指基于oracle事件(例如logon.logoff和startup.shutdown)所建立的触发器,通过使用系统事件触发器,提供了跟踪系统或是数据库变化机制.下面介绍使用的系统事件属性函 ...
- BZOJ2802Warehouse Store题解
链接 我太菜了,连贪心题都不会写... 贪心思路很简单,我们能满足顾客就满足他,如果满足不了,就看之前的顾客中 有没有需求比该顾客多的顾客,如果有的话改为卖给这位顾客会使解更优 所以我们用一个优先队列 ...
- PHPCMS快速建站系列之 pc标签where中如何使用变量
{pc:content action="lists" catid="$catid" where="typeid='$t'" order=&q ...
- IIS 设置 FTP 服务器 添加多个账户
我们有很多童鞋经常开不动IIS自带的FTP如何创建,就算创建了也不会实现多用户,下面我来分享一下我的经验吧: 使用 IIS 设置 FTP 服务器 依次单击“开始”按钮.“控制面板”和“添加或删除程序” ...
- Excel中IP地址排序
思路 将IP地址按"."分隔,提取"."之间的每个数,然后根据提取出的列从左至右进行主要字段及次要字段排序 公式说明 返回一个字符串在另一个字符串中出现的起始位 ...
- Linux用户、群组和权限命令总结
新建用户natasha,uid为1000,gid为555,备注信息为“master” groupadd -g 555 natasha useradd -u 1000 -g 555 -c maste ...
- hdu3549 最大流
#include<stdio.h> #include<string.h> #include<queue> #define MAXN 1010 using names ...