1.0.6 • Published 8 years ago
@beisen/talent-ui-helper v1.0.6
Talent UI Helper 是为Talent UI 2.0创建的辅助工具,里面包含 Utils和Middleware两部分
utils
combineImmutableReducers
如果你计划让你整个应用的State都是immutable的,用这个替换redux的combineReducers
mapActionCreators
如果你在写ActionCreators的时候,想用一个树型结构来代码你组件的结构,并且在传递的时候不用一个一个把方法列出来,可以这样
    export const actionCreator = {
        home: {
            switchLang: function(lang){
                return {type: SWITCH, lang}
            },
            header: {
                logout: function(){}
            },
            sidebar: {
                search: function(){}
            },
            content: {
                update: function(){}
            }
        }
    }此时你的home组件可以这样组织
    import React, {Component} from 'react'
    import {connect} from 'react-redux';
    import {actionCreator} from './redux/actions'
    import mapActionCreators from '@beisen/talent-ui-helper/lib/utils/mapActionCreators';
    import Header, 
    import Sidebar,
    import Content,
    @connect(mapStateToProps, mapActionCreators(actionCreator))
    export default class extends Component {
        render(){
            let {home} = this.props
            let {switchLang, header, sidebar, content} = home;
            return <div>
                <span onClick={switchLang}></span>
                <Header {...header}/>
                <Sidebar {...sidebar}/>
                <Content {...content}/>
            </div>
        }
    }在你的header组件中
export (props) => { let {logout} = props; return <header > <a href='javascript:;' onClick={logout}> 登出 </a> </header> }
warning
和console.log()差不多,代码很简单,详情自己看