美文网首页
react-redux注意点

react-redux注意点

作者: 参商_70a0 | 来源:发表于2019-11-06 15:26 被阅读0次
import {Provider} from 'react-redux'
import store from "./store/index"
const App=(
    <Provider store={store}>
        <TodoList />
    </Provider>
);

ReactDOM.render(App, document.getElementById('root'));

Provider是react-redux的一个核心API,连接store,使加上Connect变成容器组件的内部组件,有能力获取store里的数据。

import React from 'react'
import {connect} from 'react-redux'
// class TodoList extends Component {
    
//     render() {
        
//     }
// }
//如果只有一个render方法可以将其改成无状态组件,可以提升性能
const TodoList=(props)=>{
    const {inputValue,handleClick,inputChangeValue,list} =props
    return (
        <div>
            <input type="text" value={inputValue} onChange={inputChangeValue}/>
            <button onClick={handleClick}>提交</button>
            <ul>
                {
                    list.map((item,index)=>{
                        return <li key={index}>{item}</li>
                    })
                }
            </ul>
        </div>
    )
}



//会将store中的inputValue映射到props的inputValue
//mapStateToProps还有第二个参数,代表该容器组件的props
const mapStateToProps=(state , ownProps)=>{
    console.log(ownProps)
    return {
        inputValue:state.inputValue,
        list:state.list
    }
}
//将store.dispatch方法挂载到props上
const mapDispatchToProps=(dispatch,ownProps)=>{
  console.log(ownProps)
    return {
        inputChangeValue(e){
            const action={
                type:'change_input_value',
                value:e.target.value
            }
            dispatch(action);
        },
        handleClick: ()=>{
            const action={
                type:'add_item'
            }
            dispatch(action);
        }
    }
}

//它生成了一个容器组件,TodoList是UI组件,加上connect之后export了一个容器组件
export default connect(mapStateToProps,mapDispatchToProps)(TodoList);




combineReducers 可以将多个零散的reducer合并为一个大的reducer

import {combineReducers} from 'redux';
import headerReducer from '../common/header/store/reducer';
export default combineReducers({
    header:headerReducer
})

相关文章

  • react-redux注意点

    connect可以处理你需要传入props和actions的组件,哪里都可以,也可之传入本组件需要的从全局stat...

  • react-redux注意点

    Provider是react-redux的一个核心API,连接store,使加上Connect变成容器组件的内部组...

  • React(五)

    React-redux(三):connect和mapStateToProps React-redux(四):map...

  • 2020-01-10

    使用react-redux的几个注意事项 export default 两种情况 一种是匿名函数 例如: expo...

  • redux的简单应用

    1、安装 redux和react-redux: npm i redux react-redux --save-de...

  • react-redux简介(二)源码解析

    写在开头 前置知识内容,react、react-redux。 react-redux文档:https://www....

  • react-redux

    react-redux 相关步骤 npm install react-redux --save 在项目中导入re...

  • 【React进阶系列】手写实现react-redux api

    简介:简单实现react-redux基础api react-redux api回顾 把store放在context...

  • react-redux

    使用react-redux,可以更方便的使用redux开发 先install react-redux使用react...

  • react-redux

    redux 全局状态管理 react-redux 优化模块 优化redux的使用过程 通过react-redux ...

网友评论

      本文标题:react-redux注意点

      本文链接:https://www.haomeiwen.com/subject/mwmouctx.html