我正在this.state=
内设置isLoading:false,但是它不起作用。什么都不会设为假或真
static navigationOptions = ({ navigation }) => {
const { params = {} } = navigation.state;
if (navigation.state.params instanceof Object) {
console.log("OBJECT");
if (typeof params.usernameValue !== "undefined") {
console.log("FALSE");
);
navigation.state.params.changeLoadingState(false);
} else {
console.log("TRUE");
navigation.state.params.changeLoadingState(true);
}
}
}
其余
componentDidMount = () => {
const changeLoadingState = isLoadingState =>
this.setState({ isLoadingState });
const isLoadingState = this.state.isLoading;
this.props.navigation.setParams({
isLoadingState: false,
changeLoadingState
});
}
控制台日志显示为FALSE,因此它位于IF语句中,但不会将loadingState更改为false。就像changeLoadingState不起作用。 navigation.state.params = {“ isLoadingState”:false}的输出。
为什么我的isLoading状态不会更改为false?请帮我一个人,我真的很感激!
答案 0 :(得分:1)
您是否尝试过这样设置状态?
this.setState({ isLoading: isLoadingState });