将 this.state.isLoading 设置为 false 的函数在导航选项中不起作用



我在this.state=内部设置了isLoad: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 语句,但不会将加载状态更改为 false。就像 changeLoadState 不起作用一样。navigation.state.params 的输出 = {"isLoadState":false}。

为什么我的加载状态没有更改为 false?请帮帮我一个人,我真的会感激不尽!

您是否尝试过像这样设置状态?

this.setState({ isLoading: isLoadingState });

最新更新