首页 > 解决方案 > Firestore 数据库每隔一段时间才工作一次

问题描述

我的页面上有一个按钮,看起来像这样

<Button
disabled={loading}
type="submit"
className="w-100 text-center mt-3"
onClick={() => {
    firebase
    .firestore()
    .collection("users")
    .doc("123")
    .set({ test: 123})
    .then(() => {
        setSuccessAlert("Updated user");
    })
    .catch(() => {
        setErrorAlert("Could not update user");
    });
}}
>
    Add user
</Button>

它使用引导程序和打字稿,如果这可能会给您提示什么是错误的

如果我在 onclick 函数中放置一个控制台日志,它将始终记录它,但是对于上面的示例,我需要按两次它才能工作。我已经测试过,不仅仅是我不耐烦,我已经等了五分钟多才再次按下它,但是当我第二次按下它的时候它就起作用了。

无论如何,如果你知道我可能做错了什么,请帮助我。我迷路了

标签: javascriptreactjstypescriptfirebasegoogle-cloud-firestore

解决方案


当我声明一个变量firebase.firestore().collection("users")而不是直接调用它时,它会起作用

所以现在代码看起来像这样:

const db = firebase.firestore().collection("users");

db.doc("123")
    .set({ test: 123})
    .then(() => {
        setSuccessAlert("Updated user");
    })
    .catch(() => {
        setErrorAlert("Could not update user");
    });

推荐阅读