首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Firebase --在Chrome中没有追踪或行号错误

Firebase --在Chrome中没有追踪或行号错误
EN

Stack Overflow用户
提问于 2014-12-13 00:59:46
回答 3查看 282关注 0票数 1
代码语言:javascript
复制
<script src="https://cdn.firebase.com/js/client/2.0.6/firebase.js"></script>
<script>
var root_ref = new Firebase('https://jcatest.firebaseio.com')

function other_function() {
  // many lines of code here...
  var x = {}
  x.x()
  // many lines of code here...
}

function my_function(snap){
  other_function()
}
root_ref.once('value', my_function)
</script>

如果我把上面的代码放在html文件中并用Chrome打开它,我在控制台中看到的都是“未定义的TypeError:未定义不是函数. firebase:26”

在Firefox中,我看到了实际的错误消息:

"TypeError: x.x不是函数. temp.html:8“

为什么我在Chrome中看不到正确的错误信息?

这是Chrome缺陷吗?火药库窃听器?还是我做错什么了?

这对我来说是个大问题,因为我的回调中有很多代码,而firebase基本上是在说,“哪里有错误。”不是很有帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-03-10 07:49:08

这个问题在FirebaseJS版本2.0.6上是可重复的。使用Firebase 2.2.2,两种浏览器都正确地报告了错误和完整的堆栈跟踪。

票数 3
EN

Stack Overflow用户

发布于 2014-12-13 02:01:29

在Firebase客户端中,Firebase.DataSnapshot对象没有方法value(),但是有一个val()方法,这可能就是您要寻找的方法。

有关更多信息,请参见DataSnapshot文档。

我怀疑浏览器没有给出相关的错误行,因为错误发生在匿名函数中,但这只是猜测。

票数 3
EN

Stack Overflow用户

发布于 2015-02-03 01:39:27

如果将回调包装为零ms setTimeout调用,则会得到回溯。不知道为什么这是必要的。

root_ref.once('value', function(){ setTimeout(my_function) })

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27454413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档