当前位置: 首页 > news >正文

保定网站 优重庆外贸网站建设公司

保定网站 优,重庆外贸网站建设公司,零售客户电商网站,昆明seo网站建设费用lesson4-react全家桶及原理解析.mov 项⽬实战 项⽬实战 课堂⽬标资源知识要点起步Generatorredux-sagaumi why umidvadva+umi 的约定安装Umi基本使⽤理解dva移动端cra项⽬简介课堂⽬标 掌握企业级应⽤框架 - umi掌握数据流⽅案 - dva掌握⽣成器函数 - generator掌握redux异步⽅…

lesson4-react全家桶及原理解析.mov

项⽬实战

  • 项⽬实战
    • 课堂⽬标
    • 资源
    • 知识要点
    • 起步
    • Generator
    • redux-saga
    • umi
      • why umi
      • dva
      • dva+umi 的约定
      • 安装
      • Umi基本使⽤
      • 理解dva
    • 移动端cra项⽬简介

课堂⽬标

  1. 掌握企业级应⽤框架 - umi
  2. 掌握数据流⽅案 - dva
  3. 掌握⽣成器函数 - generator
  4. 掌握redux异步⽅案 - redux-saga

资源

  1. umi
  2. dva
  3. redux-saga:中⽂、英⽂
  4. generator

知识要点

  1. generator⽤法
  2. redux-saga⽤法
  3. umi⽤法

起步

Generator

Generator 函数是 ES6 提供的⼀种异步编程解决⽅案,语法⾏为与传统函数完全不同,详细参考参考阮⼀峰。

  1. function关键字与函数名之间有⼀个*;
  2. 函数体内部使⽤yield表达式,定义不同的内部状态。
  3. yield表达式只能在 Generator 函数⾥使⽤,在其他地⽅会报错。
function* helloWorldGenerator() {yield 'hello';yield 'world';return 'ending';
}
var hw = helloWorldGenerator();
//执⾏
console.log(hw.next());
console.log(hw.next());
console.log(hw.next());
console.log(hw.next());

由于 Generator 函数返回的遍历器对象,只有调⽤ next⽅法才会遍历下⼀
个内部状态,所以其实提供了⼀种可以暂停执⾏的函数。 yield表达式就
是暂停标志。

redux-saga

  • 概述:redux-saga使副作⽤(数据获取、浏览器缓存获取)易于管理、执⾏、测试和失败处理
  • 地址:https://github.com/redux-saga/redux-saga
  • 安装:npm install --save redux-saga
  • 使⽤:⽤户登录

先创建⼀个RouterPage

import React, { Component } from "react";
import { BrowserRouter, Switch, Link, Route } from "react/router-dom";
import LoginPage from "./LoginPage";
import UserPage from "./UserPage";
import PrivatePage from "./PrivatePage";export default class RouterPage extends Component {render() {return (<div><h1>RouterPage</h1><BrowserRouter><Link to="/login">登录</Link><Link to="/user">⽤户中⼼</Link><Switch><Route path="/login" component={LoginPage} />{/* <Route path="/user" component={UserPage} /> */}<PrivatePage path="/user" component={UserPage} />	</Switch></BrowserRouter></div>);}
}

创建store/index.js

import { createStore, combineReducers, applyMiddleware } from "redux";
import thunk from "redux-thunk";const initialLogin = {isLogin: false,loading: false,name: "",error: "",
};function loginReducer(state = { ...initialLogin }, action) {switch (action.type) {case "requestLogin":return {...initialLogin,loading: true,};case "requestSuccess":return {...state,isLogin: true,loading: false,};default:return state;}
}const store = createStore(combineReducers({ user: loginReducer }),applyMiddleware(thunk),
);export default store;

登录⻚⾯pages/LoginPage.js

import React, { Component } from "react";
import { Redirect } from "react-router-dom";
import { connect } from "react-redux";export default connect(//mapStateToPropsstate => ({isLogin: state.user.isLogin,loading: state.user.loading,}),{//mapDispathToProps/* login: () => ({type: "requestSuccess",}), */login: () => dispatch => {dispatch({ type: "requestLogin" });setTimeout(() 
http://www.yayakq.cn/news/270405/

相关文章:

  • 开发网站找什么公司吗wordpress博客费用
  • 17网站一起做网店如何下单思南县住房和城乡建设局网站
  • 深圳婚纱摄影网站建设找图做素材啥网站好
  • 公司网站是怎么样的浙江省城乡建设厅证书查询
  • 深圳市移动端网站建设公司网站如何建立
  • 长沙网站设计优刻wordpress 网站卡
  • 聊城做网站信息网站开发7个基本流程图
  • 网站编程教学上海做无创DNA医院网站
  • 网站建设怎么上传数据wordpress带会员的主题
  • 免费的行情网站ifind是常州百度网站排名
  • 手机网站焦点图二人世界视频免费
  • 织梦网站如何打通百度小程序图书馆网站建设研究
  • 网站不设置关键词描述深圳坪山住房和建设局网站
  • 6731官方网站下载动漫网站设计论文
  • 西部数码网站管理系统金点子创业项目
  • 网站策划专员所需知识注册公司怎么查询
  • 深圳做网站一个月多少钱网站建设 百度云盘
  • 电子商务安全问题 网站权限管理wordpress主题 dux1.8
  • 免费企业网站建设哪种马鞍山市建设银行网站
  • 信用中国 网站 支持建设高港区住房和城乡建设局网站
  • 做的网站为什么图片看不了昆山网站建设官网
  • 网站做优化好还是做推广好广西展厅设计公司
  • 券优惠网站如何做福田祥菱m2双排后双轮
  • 中国设计网站官网地址品牌营销传播
  • 金华官方网站建设在线电子印章制作生成免费
  • 深圳网站建设公司哪家网站建设通用代码
  • 网站平台建设情况汇报网站的域名在哪里看
  • 长沙建站优化夏邑做网站
  • 大足网站建设网站数据建设涉及哪些内容
  • 重庆沙坪坝做网站企业网站信息化建设