我正在通过props传递closePopup函数。这个函数可以工作,但是我在控制台中得到错误。
我的组件
function FormSearch({ closePopup }) {
const submitSearch = (event) => {
event.preventDefault();
closePopup();
};
}
我的函数关闭另一个组件中的弹出窗口。
function MobileProvider() {
const [showPopup, setShowPopup] = useState(false);
const closePopup = () => {
setShowPopup((prev) => !prev);
};
}
我希望通过props传递函数来解决这个问题,这样控制台中的错误就不会看得更远了。
细节,点击的时候,弹出窗口正常关闭,我只是不明白为什么控制台会出现错误。
1条答案
按热度按时间6jygbczu1#
当传递closePopup时,你需要设置这个
setShowPopup
存在的作用域(this),因为你正在执行子对象中的方法,而setShowPopup
不存在。可以通过在父零部件中设置此值来执行此操作。