Javascript RangeError:使用快照实时Firebase JSON数据填充数据时超出了最大调用堆栈大小

Javascript RangeError:使用快照实时Firebase JSON数据填充数据时超出了最大调用堆栈大小,javascript,json,firebase,vue.js,firebase-realtime-database,Javascript,Json,Firebase,Vue.js,Firebase Realtime Database,我试图用实时Firebase数据库中的JSON数据填充“结果”数组,但我得到了 RangeError:超出了最大调用堆栈大小 至少有两个孩子 资料 {{result.Speed} 从“@/firebase/init”导入数据库 从“firebase”导入firebase 导出默认值{ 数据(){ 返回{ 结果:[ ], 搜索:“” } }, 方法:{ }, 创建(){ //引起问题的线路 firebase.database().ref().on('value',(snapshot)=>{thi

我试图用实时Firebase数据库中的JSON数据填充“结果”数组,但我得到了

RangeError:超出了最大调用堆栈大小 至少有两个孩子


资料
{{result.Speed}
从“@/firebase/init”导入数据库
从“firebase”导入firebase
导出默认值{
数据(){
返回{
结果:[
],
搜索:“”
}
},
方法:{
},
创建(){
//引起问题的线路
firebase.database().ref().on('value',(snapshot)=>{this.results=JSON.stringify(snapshot.val());
}); 
},
安装的(){
console.log(firebase.auth().currentUser)
} 
}


请回答正确的代码,以便正确地在“results”数组中输入JSON,然后打印该JSON的每个文档。

您是否试图一次读取整个数据库?是,我想将所有JSON数据存储在我的“结果”数组中,然后将其打印到屏幕上。这可能是一个巨大的数据量,并且会淹没设备。你能一次读一本吗,或者一次读10本吗?此外,向用户显示如此多的数据也可能会让他们不知所措,因此较小的可管理数据块可能是更好的选择。
    <template>
    <div id="show-results">
        <h1>Data</h1>
             <input type="text" v-model="search"  placeholder="search results" />
            <div v-for="result in results" class="single-result">
            <h2>{{ result.Speed }}</h2>
           </div>

    </div>
</template>

<script>

    import db from '@/firebase/init'
    import firebase from 'firebase'

    export default {
        data () {
            return {
                results: [
                ],
               search: ''
            }
        },
        methods: {

        },
        created() {
    // Issue causing line
        firebase.database().ref().on('value', (snapshot) => { this.results = JSON.stringify(snapshot.val());

}); 
    },

        mounted(){
              console.log(firebase.auth().currentUser)
 }