const javascript react native中的调用函数
我对本地语言和javascript都是新手。我来自java和android开发。 我希望在常量中调用函数,但无论我以何种方式尝试,都会遇到大量错误 我得到了一个错误:const javascript react native中的调用函数,javascript,reactjs,firebase,react-native,geofire,Javascript,Reactjs,Firebase,React Native,Geofire,我对本地语言和javascript都是新手。我来自java和android开发。 我希望在常量中调用函数,但无论我以何种方式尝试,都会遇到大量错误 我得到了一个错误: this.collectionUpdate is not a function 主屏幕: 我知道这可能对我不起作用,因为我对javascript的了解还不够,无法理解我做错了什么,但是,我会很快开始学习javascript课程,以便更好地理解。但如果有人能告诉我哪里出了问题,我会非常感激。我觉得这是因为我试图调用常量中的函数?这
this.collectionUpdate is not a function
主屏幕:
我知道这可能对我不起作用,因为我对javascript的了解还不够,无法理解我做错了什么,但是,我会很快开始学习javascript课程,以便更好地理解。但如果有人能告诉我哪里出了问题,我会非常感激。我觉得这是因为我试图调用常量中的函数?这与常量无关,而是与函数有关。使用关键字function编写的函数将为此创建一个新范围。当你在函数内部使用它时,你看到的是一个不同于函数外部的东西
geoQuery.on('key_entered', function(key, doc, distance) {
this.onCollectionUpdate(doc) // wrong "this"
})
解决此问题的一个简单方法是在此处使用=>函数:
geoQuery.on('key_entered', (key, doc, distance) => {
this.onCollectionUpdate(doc) // correct "this"
})
嗨,Lazar,谢谢你在做了你推荐的改变后的快速回答。现在它说doc.forEach不是一个函数。@AndrewIrwin如果表示doc不是一个数组,请记录该值以确保正确地传递了该参数,并且它是您指定的形状expect@RobbieMilejczak好的,非常感谢!谢谢你!
geoQuery.on('key_entered', (key, doc, distance) => {
this.onCollectionUpdate(doc) // correct "this"
})