最简单的React和Redux整合的例子
2017-03-26 14:43
721 查看
安装create-react-app
npm install -g create-react-app
创建项目
create-react-app reactreduxrouterdemo
cd reactreduxrouterdemo
安装第三方模块
npm install --save redux
npm install --save react-redux
npm install --save react-router
修改index.js
这个例子大概是最简单的了, 而且每一步注释都非常清楚了。
运行工程npm start
源代码工程
https://github.com/chenhaifeng2016/reactreduxrouter
npm install -g create-react-app
创建项目
create-react-app reactreduxrouterdemo
cd reactreduxrouterdemo
安装第三方模块
npm install --save redux
npm install --save react-redux
npm install --save react-router
修改index.js
import React, { Component } from 'react'; import ReactDOM from 'react-dom'; import { createStore } from 'redux'; import { Provider, connect } from 'react-redux'; //定义组件 class App extends Component{ render() { const {text, onChangeText, onButtonClick} = this.props; return ( <div> <h1 onClick={onChangeText}> {text} </h1> <button onClick={onButtonClick}>click me</button> </div> ); } } //action const changeTextAction = { type:'CHANGE_TEXT' } const buttonClickAction = { type:'BUTTON_CLICK' } //reducer const initialState = { text: 'Hello' } const reducer = (state = initialState, action) => { switch (action.type) { case 'CHANGE_TEXT': return { text: state.text=='Hello' ? 'world':'Hello' } case 'BUTTON_CLICK': return { text: 'Hello world' } default: return initialState; } } //store let store = createStore(reducer); //映射Redux state到组件的属性 function mapStateToProps(state) { return { text: state.text } } //映射Redux actions到组件的属性 function mapDispatchToProps(dispatch){ return{ onButtonClick:()=>dispatch(buttonClickAction), onChangeText:()=>dispatch(changeTextAction) } } //连接组件 App = connect(mapStateToProps, mapDispatchToProps)(App) //渲染组件 ReactDOM.render( <Provider store={store}> <App /> </Provider>, document.getElementById('root') )
这个例子大概是最简单的了, 而且每一步注释都非常清楚了。
运行工程npm start
源代码工程
https://github.com/chenhaifeng2016/reactreduxrouter
相关文章推荐
- 最简单的React和Redux整合的例子
- Redux系列02:一个炒鸡简单的react+redux例子
- 一个简单的例子让你了解React-Redux
- Redux系列02:一个炒鸡简单的react+redux例子
- react,react-router,react-redux最简单例子
- react-router-redux 简单例子
- spring mvc + mybatis + mysql 整合的一个简单的登录例子
- [图解教程] Axis2与Eclipse整合开发Web Service之一:简单的计算服务例子
- struts2 整合 Spring开发,简单数据添加小例子
- 关于JbpmCenter和Mule整合实现一个审核的简单例子
- SpringMVC整合Quartz实现定时任务---简单的例子
- Axis2与Eclipse整合开发Web Service之一:简单的计算服务例子
- EJB整合JSF简单的小例子
- [图解教程] Axis2与Eclipse整合开发Web Service之一:简单的计算服务例子
- 用cfx做webservice的简单例子,还有和spring的整合
- SpringSecurity整合SSH的简单例子
- Myeclipse10 整合 Flex4 开发简单例子
- Axis2与Eclipse整合开发Web Service之一:简单的计算服务例子
- [图解教程] Axis2与Eclipse整合开发Web Service之一:简单的计算服务例子
- [图解教程] Axis2与Eclipse整合开发Web Service之一:简单的计算服务例子