react state值如何引用自身state值?

todo:这里的duration想引用上面的duration:300,怎么写啊,我这样写和this.duration都不行

this.state={
            duration:300,
            transition:{
                inProp:true,       
                defaultStyle:{
                    transition: `all ${duration}ms ease-in-out`,//todo:这里的duration想引用上面的duration:300,怎么写啊,我这样写和this.duration都不行
                    width:'100%',
                    marginTop:'60px'
                }
            },
            drawer:{
                left:true,
                docked:true
            }
        }
阅读 6.2k
5 个回答

直接用this.state.duration可以不?

this.state.duration

你把300定义为一个外部变量,取变量赋值就可以了

let dur = this.state.durationg,
this.state={
            duration:300,
            transition:{
                inProp:true,       
                defaultStyle:{
                    transition: dur,//todo:这里的duration想引用上面的duration:300,怎么写啊,我这样写和this.duration都不行
                    width:'100%',
                    marginTop:'60px'
                }
            },
            drawer:{
                left:true,
                docked:true
            }
        }

这样呢?

如果是子组件的话,可以考虑将共有的属性用props传递给,this.state = { 、、、};但是需要在生命周期中(componentWillReceiveProps)中再次this.setState({你这个传递的值}},这样才能获取到最新的值

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题