我正在尝试在 use effect 中运行一个简单的代码。我已经设置了对数据库的依赖。因此,根据规则,当数据库将被更改时,应自动调用使用效果。但是我更新了评分的值,使用效果没有调用。所以效果不会显示更新后的值。
但是如果我按 cntrl+ s 则使用效果会自动调用并且更新的值是 hown>
现在,请帮助解决我的问题,以便我更改任何数据库时都会自动调用使用效果。 这是代码
useEffect(() => {
console.log('testt--222------------------')
database.ref(`courselist/${CourseId}`)
.child('courseReview')
.orderByChild('rating')
.equalTo(5)
.once('value')
.then(snapshot => {
One = snapshot.numChildren();
console.log('-------One-----', One);
setonestarsum(((One / x) * 100));
console.log('testt--------------------', One)
});
}, [database]);
答案 0 :(得分:0)
您使用 Google Firebase 吗?否则它将无法工作,因为 useEffect 无法检查数据库中的更改。