反应较新。我并不经常这样做。示例:
this.state = {
varName: x.length != 0 ? 'Something' : null
}
答案 0 :(得分:1)
通常,您将使用初始值在构造函数中定义初始状态,然后在组件生命周期中,可以将State设置为该条件。例子
constructor(props) {
super(props);
this.state = {
varName:null
};
}
componentDidMount() {
// perhaps here evaluate your x value and then set the state
var x = something such as fetch or props passed
this.setState({
varName: x.length != 0 ? 'Something' : null
})
}
答案 1 :(得分:0)
我不知道为什么这行不通,但是您必须注意x
的定义位置。通常,当我从props,localstorage等中获取所需的信息时,只需将所有状态变量设置为null或默认值,然后在componentWillMount
中更新它们即可。