这是我的错误:
err [错误:无效的挂接调用。只能在函数组件的主体内部调用挂接。以下原因之一可能会导致这种情况:
1.您可能有不匹配的React和呈现器版本(例如React DOM)
1.你可能违反了钩子的规则
1.您可能在同一个应用中有多个React副本有关如何调试和修复此问题的提示,请参阅https://reactjs.org/link/invalid-hook-call。]
代码:
let url = config.baseURL + 'home_data.php?user_id=' + user_id + '&APP_VERSION=1';
consolepro.consolelog('url', url);
apifuntion
.getApi(url)
.then(obj => {
if (obj.success == 'true') {
consolepro.consolelog('homedataoooooooooooooooooooooooooooooooooooooooooooooooooooooo', obj);
const dispatch = useDispatch();
const dataFromObj = useSelector(state => state.Reducers);
consolepro.consolelog("dattttttttttttttttttttttttttttttttttttttttttttttttt", dataFromObj)
dispatch(getDataMethod(obj));
check_notification_num = obj.check_notification_num;
// (main_category_arr = obj.category_arr);
config.content_arr = obj.content_arr;
if (config.device_type == 'ios') {
config.guest_status = obj.guest_status;
} else {
config.guest_status = false;
}
localStorage.setItemObject('user_arr', obj.user_details);
this.setState({
category_arr: obj.category_arr,
new_item: obj.all_product,
});
} else {
if (
obj.active_status == '0' ||
obj.msg[config.language] == msgTitle.usernotexit[config.language]
) {
config.checkUserDeactivate(this.props.navigation);
} else {
msgProvider.alert(
msgTitle.information[config.language],
obj.msg[config.language],
false,
);
}
return false;
}
})
.catch(err => {
consolepro.consolelog('err', err);
});
我正在创建一个项目,我的数据来自PHP数据库,但它太慢了。
所以我用了redux,但是它给了我一个错误,我不知道如何在类内组件中使用redux,但是我知道如何在函数组件中使用
谁能给我一个react native中使用redux的类组件的完整示例?
1条答案
按热度按时间3mpgtkmj1#
首先,确保这个文件是一个React函数组件,钩子只能从函数组件的主体调用。
其次,将这些行移动到组件的根范围:
无法从其他函数的范围调用挂接。