繁体   English   中英

使用Firebase实时数据库和VueFire的Vue.js应用程序突然停止工作

[英]Vue.js app with Firebase realtime database and VueFire suddenly stopped working

我没有改变我的代码,但上周VueFire停止加载任何数据。 我已经尝试恢复到旧版本的Vue和VueFire但我似乎找不到导致问题的原因。

目前我的代码几乎与此处提供的文档相同: https//vuefire.vuejs.org/vuefire/#why

    // Vue.js
    let config = {
        apiKey: "<?php echo getenv('FB_API_KEY'); ?>",
        authDomain: "<?php echo getenv('FB_AUTH_DOMAIN'); ?>",
        databaseURL: "<?php echo getenv('FB_DB_URL'); ?>",
        projectId: "esportsgametrainers",
        storageBucket: "<?php echo getenv('FB_STORAGE_BUCKET'); ?>",
        messagingSenderId: "<?php echo getenv('FB_MSG_SENDER_ID'); ?>"
    };

    let app = firebase.initializeApp(config);
    let db = app.database();

    // Open Session Ref.
    let openSessionsRef = db.ref('openSessions');

    let vm = new Vue({
        el: '#open_training_sessions',
        data: () => ({ openSessions: [] }),
        firebase: {
            openSessions: openSessionsRef
        },
        computed: {
            latestOpenSessions: function () {
                console.log('??', this.openSessions);
                //return this.openSessions;
                return this.openSessions.filter(function (session) {
                    console.log(session);
                    return session;
                    // Only unaccepted games
                    if (!session.accepted) {
                        // Date filter
                        let currentTime = new Date().getTime();
                        let sessionCreated = new Date(session.CreatedDate).getTime();
                        if (sessionCreated < currentTime) {
                            let offset = currentTime - sessionCreated;
                            if (offset / 3600000 < 3) {
                                return session;
                            }
                        } else {
                            return session;
                        }
                    }
                });
            }
        }
    });

添加行: data: () => ({ openSessions: [] }),应用程序不再抛出错误,但是数组的内容始终为空,而我加载的Firebase数据库有很多条目。

发生这种情况真的很令人沮丧。 正如我所说,我没有改变代码,它工作了几个月,现在却没有。

有谁知道为什么会这样?

我终于发现了这个问题的根源以及如何修复。

一些混乱是由于这样一个事实造成的,因为我的应用程序仍处于早期开发状态,它实际上是从CDN加载Vuefire而不是从本地依赖项加载。

最近Vuefire开发者已经从1.x变为2.x作为他们的官方稳定版本。 也就是说,似乎在2.x(现在是稳定通道)和3.x(下一个预发布候选版本)版本中,主要焦点转移到Cloudstore,现在实时数据库实现存在重大问题。

在将Vuefire降级到版本1.4.5(最新的1.x版本)后,我的所有原始源代码再次按预期工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM