为了账号安全,请及时绑定邮箱和手机立即绑定

redux更新了却没有重新渲染?

redux更新了却没有重新渲染?

一只甜甜圈 2018-10-27 14:11:14
//reducerconst initState={    style:{left:0}}const Tabs=(state=initState,action)=>{    switch (action.type){        case 'recommend':            Object.assign(state,{style:{left:0}})            return state        case 'list':            Object.assign(state,{style:{left:'25%'}})            return state        default:            return state    }}export default Tabs//组件 export default class Tab extends Component{    render(){        const {style}=this.props        return(            <div>                      ...                    <div style={style}><span></span></div>            </div>        )    }}
查看完整描述

1 回答

?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

const Tabs=(state=initState,action)=>{

    switch (action.type){

        case 'recommend':

            return Object.assign({style:{left:0}},state);

        case 'list':

           return Object.assign({style:{left:'25%'}},state);

        default:

            return state

    }

}

redux是覆盖式更新的不能把旧的state对象返回回去,必须是新建的对象才会更新


查看完整回答
反对 回复 2018-11-24
  • 1 回答
  • 0 关注
  • 1084 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号