redux 最简例子

时间:2021-08-24 00:23:16

方便初学redux的同学学习,这里是最简单的redux例子

 1 import React, {Component, PropTypes} from 'react'
2 import ReactDOM from 'react-dom'
3 import {createStore} from 'redux'
4 import {Provider, connect} from 'react-redux'
5
6 // React组件
7 class Counter extends Component {
8 render() {
9 const {value, onIncreaseClick} = this.props
10 return (
11 <div>
12 <span>{value}</span>
13 <button onClick = {onIncreaseClick}> Increase </button></div>
14 )
15 }
16 }
17
18 // Props
19 Counter.propTypes = {
20 value: PropTypes.number.isRequired,
21 onIncreaseClick: PropTypes.func.isRequired
22 }
23
24 // Action
25 const increaseAction = {
26 type: 'increase'
27 }
28
29 // Reducer
30 function counter(state = {
31 count: 0
32 }, action) {
33 let count = state.count
34 switch (action.type) {
35 case 'increase':
36 return {
37 count: count + 1
38 }
39 default:
40 return state
41 }
42 }
43
44 // Store
45 let store = createStore(counter)
46
47 // 把state转换成props,在组件中接收使用
48 function mapStateToProps(state) {
49 return {
50 value: state.count
51 }
52 }
53
54 // 把action对应的方法转换成props,在组件中接收使用
55 function mapDispatchToProps(dispatch) {
56 return {
57 onIncreaseClick: () => dispatch(increaseAction)
58 }
59 }
60
61 // connected Component
62 let App = connect(
63 mapStateToProps,
64 mapDispatchToProps
65 )(Counter)
66
67 ReactDOM.render(
68 <Provider store={store}>
69 <App />
70 </Provider>,
71 document.getElementById('root')
72 )

redux 最简例子的更多相关文章

  1. react-router &plus; redux &plus; react-redux 的例子与分析

    一个 react-router + redux  + react-redux 的例子与分析 index.js  import React from 'react' import ReactDom fr ...

  2. 拥抱Node&period;js 8&period;0,N-API入门极简例子

    本文摘录自<Nodejs学习笔记>,更多章节及更新,请访问 github主页地址.欢迎加群交流,群号 197339705. N-API简介 Node.js 8.0 在2017年6月份发布, ...

  3. 发布Rest风格的WebService的SpringBoot极简例子

    JDK:1.8.0_212 IDE:STS4(Spring Tool Suit4 Version: 4.3.2.RELEASE) 工程下载:https://files.cnblogs.com/file ...

  4. Redux系列01:从一个简单例子了解action、store、reducer

    其实,redux的核心概念就是store.action.reducer,从调用关系来看如下所示 store.dispatch(action) --> reducer(state, action) ...

  5. redux核心思路和代码解析

    最近在公司内部培训的时候,发现很多小伙伴只是会用redux.react-redux.redux-thunk的api,对于其中的实现原理和数据真正的流向不是特别的清楚,知其然,也要知其所以然,其实red ...

  6. redux 入门

    背景: 在react中使用redux 重点:不要滥用redux,如果你的页面非常简单,没有 那么多的互动,那么就不要使用redux,反而会增加项目的复杂性. 如果你有以下情况,则可以考虑使用redux ...

  7. redux&plus;react-redux&plus;示例的快速上手体验

    刚学习redux的同学提供一些可供参考的例子. 之前用vue用了很久 vue的语法糖用起来是真的舒服  react 其实毕竟他们都是类似的框架, 虽然语法大不同, 但是有些地方的思想还是很像的, 废话 ...

  8. Redux和React-Redux的实现(一):Redux的实现和context

    react使用redux做状态管理,实现多个组件之间的信息共享,解决了父子组件.兄弟组件之间的复杂通信问题.vue有vuex,总之是一种flux的思想.react提供了react-redux这个库,一 ...

  9. &lbrack;笔记&rsqb; Delphi使用DUnitX做单元测试的简单例子

    Delphi XE 提供了对DUnitX的支持,记录一个最简例子. 首先创建项目A,然后创建单元untCalc,代码如下: unit untCalc; interface type TCalc = c ...

随机推荐

  1. 怎么在MVC中使用自定义Membership

    首先我们来看看微软自带的membership: 我们打开系统下aspnet_regsql.exe 地址一般位于: C:\WINDOWS\Microsoft.NET\Framework\v2.0.507 ...

  2. bash shell命令行选项与修传入参数处理

    在编写shell程序时经常需要处理命令行参数,本文描述在bash下的命令行处理方式.选项与参数:如下命令行: ./test.sh -f config.conf -v --prefix=/home -f ...

  3. selenium&plus;python笔记1

    #!/usr/bin/env python # -*- coding: utf-8 -*- """@desc: 讲讲web项目中常用的方法属性 webdriver 提供了 ...

  4. javascript事件代理(委托)

    之前有接触过事件代理,但是印象并不深刻.这次记下来加强印象. 用个大家比较常见的代码举例子: html dom结构: <ul id="ul1"> <li>0 ...

  5. web中的中文字体的英文名称

    自从font-face出现以后,字体样式就不再是web开发者的难题了,但是对于移动端的中文来说,问题还是存在的,因为中文文件大小最少要3M+,即使选择性的加载某个字的字体,那也会出现不易替换的问题,所 ...

  6. beini破解无线

    软件介绍 当你的笔记本有无线网卡却不能上网的时刻,也许你会很焦急. 又或许你的隔壁就有无线网络可以接的时刻,但你却由于米有密码而不能上网.下面我将简介一款可以令你惊讶的软件,奶瓶 有了奶瓶以上疑问都可 ...

  7. iOS基础 - NSURLSession

    使用URLSession所有的网络访问都是有缓存的,缓存文件自动保存在tmp文件夹中,URLSession本身实现的时候,就是少量多次的! l 使用defaultSessionConfiguratio ...

  8. 有关数据传输GET和POST的方法的区别

    有关前后端数据交互,主要是通过走http协议通过post或get的方法,拿angularJS来说:通过JS来发送http请求调用相关接口: $scope.apostDate=function(){ $ ...

  9. 【CF889E】Mod Mod Mod DP

    [CF889E]Mod Mod Mod 题意:给你一个序列$a_1,a_2...a_n$,定义$f(x,n)=x\mod a_n$,$f(x,i)=x\mod a_i+f(x \mod a_i,i+1 ...

  10. runloop - 面试题

    2.