【发布时间】:2020-10-27 14:34:03
【问题描述】:
我在控制台中遇到错误
错误!! [错误:无效的挂钩调用。钩子只能在里面调用 功能组件的主体。这可能发生在其中一个 原因如下:
- 您的 React 和渲染器版本可能不匹配(例如 React DOM)
- 您可能违反了 Hooks 规则
- 您可能在同一个应用中拥有多个 React 副本*
import firebase from '../../database/firebase';
import { useDispatch } from 'react-redux';
import * as actions from "../../store/actions";
export const userProfilePcture =(id)=>{
const image = firebase.storage().ref(id + '/profilePicture');
var user = firebase.auth().currentUser;
image.getDownloadURL().then((url) => {
user.updateProfile({
photoURL: url
}).then(() =>{
console.log("updete succefully");
updeteUser();
}).catch(error =>{
console.log("error!!",error);
});
});
};
export const updeteUser=()=>{
const dispatch=useDispatch();
var user = firebase.auth().currentUser;
dispatch(actions.updateUser(user));
}
我怎样才能避免这种情况?
【问题讨论】:
-
在上面的帖子中,您可以找到有关挂钩的文档链接。你的组件应该是一个合适的功能组件(以大写字母开头)或者它应该以
use开头。
标签: javascript reactjs react-hooks