草庐IT

firebase-console

全部标签

javascript - 是否可以重命名 Firebase 实时数据库中的 key ?

我想知道,有没有办法更新键值?让我们使用以下数据:我正在使用set()来写入数据。现在,我希望用户编辑他们的bookTitle并且需要在两个地方进行更改。我尝试使用update()但我似乎无法让它工作。我只能编辑bookInfo中的bookTitle,不能编辑books。移动不是一个选项,因为它会删除bookData。我也尝试使用push()编写,但后来,我无法正确搜索,因为我没有pushID(我需要搜索,因为用户不能拥有两本同名的书)那么,有没有办法更新键值呢?或者,有更好的方法吗?我接受建议。谢谢!更新:这是我目前用来更新bookInfo中书名的内容varbookName=docu

javascript - Chrome Dev Console 中的蓝色数字?

在javascript中,我有一个变量,我将其推送到console.log然后递增它并再次将其推送到日志,这在Chrome开发工具中显示如下。这个变量做了一些奇怪的事情,比如如果我尝试使用+=运算符来添加它,它实际上将添加的值放在数字后面(例如如果x=5而我做了x+=3,x将等于53)。真正令人难以置信的部分是用++递增它按预期工作,但我的问题不是为什么会这样,而是为什么递增的数字在控制台中是蓝色的?如果有人能告诉我发生上述情况的可能情况,那就太好了,但我感觉控制台中的蓝色条目与此相关。那么基本上为什么在Chrome开发者控制台中,数字会显示为蓝色? 最佳答

javascript - Safari/WebKit 的 console.log DOM 节点作为对象?

这让我抓狂了一段时间。当我console.log一个DOM节点(通过示例从document.getElementById返回)时,它显示为一个交互式html元素,就像它出现在“元素”选项卡上一样。这肯定很方便,但有时我只想展开对象并查看其所有属性,就像我可以对登录到控制台的所有其他类型的对象一样。有什么方法可以让DOM节点作为常规对象显示在控制台中? 最佳答案 使用console.dir而不是console.log。console.log(document.body);...console.dir(document.body);>H

javascript - 如何使用 Jest 和 jsdom 来测试 console.log?

我刚刚开始使用Jest,并且已经成功编写了测试DOM的单元测试。我有一个library在屏幕上输入内容,所以我可以很好地进行测试。在某些情况下,我的库不会抛出错误,而是吐出console.warn或console.log。是否可以使用Jest来测试这些控制台消息是否正在发生? 最佳答案 您可以像这样通过spy设置console.log:global.console={warn:jest.fn(),log:jest.fn()}//runyourcodeexpect(global.console.log).toHaveBeenCalle

javascript - Firebase HTTP Cloud Functions - 一次读取数据库

我有一个FirebaseHTTPs函数。该函数需要根据查询参数从Firebase数据库中读取一个值,并根据该数据返回一个结果。FirebaseJSSDK说要使用:returnfirebase.database().ref('/users/'+userId).once('value').then(function(snapshot){varusername=snapshot.val().username;//...});但是,云函数示例有:varfunctions=require('firebase-functions');functions.database.ref('/');但数据库

javascript - 自定义控制台日志功能,一个 console.log 包装器

functionlog(msgOrObj){if(dev_mode){console.log({'message':msgOrObj,'caller':arguments.callee.caller.toString()});}}因此,我尝试编写一个简单的自定义控制台日志函数(如上所述)。但是,我正在努力寻找调用者来自哪个文件和行。我能看到的最多的是调用它的函数。有人做过类似的事情吗?或者这甚至可能吗?第70行的somescript.js中使用的示例:log('someveryimportantmessage!') 最佳答案 是的,

javascript - 如何使用 Firebase 云消息传递通过 Web 浏览器订阅主题

我正在尝试找到一种使用Firebase云消息传递向我的应用程序的所有用户发送通知的方法,但我有一个仅限网络的应用程序。我见过似乎适用于Android/iOS的解决方案,它基本上涉及让用户自动订阅名为“allDevices”的主题,然后向订阅该主题的所有用户发送通知。我似乎找不到任何关于如何让基于Web的用户订阅主题的文档。有谁知道这是否可行,如果可行,是否有我遗漏的文档可以涵盖这一点?谢谢! 最佳答案 在适用于JavaScript的Firebase云消息传递SDK中,没有直接的API可以让客户端订阅主题。相反,您可以通过RESTAP

javascript - 输入 {a :1} giving 1, 和 {a :1, b :2} giving an error in a Javascript console? 的行为是什么

以下将显示在Firebug或jsconsole.com中或在其他Javascript交互式控制台中:>>>foo={a:1,b:2.2}Object{a=1,more...}>>>foo.a1>>>foo.b2.2>>>{a:1,b:2.2}SyntaxError:invalidlabel{message="invalidlabel",more...}>>>{a:1}1为什么1为{a:1}返回,为什么{a:1,b:2.2}给出错误?在Ruby中,它们会按照您定义它的方式返回。 最佳答案 第二行给你一个SyntaxError因为它开头

javascript - Firebase (2016) 浅层查询

我正在试用Firebase(自Google的新版本以来)。在原始版本的Firebase中,参数shallow=true将为请求的树/分支根部的每个key返回一个带有{key:true}的对象(因此,不是返回子对象,而是只知道child(ren)存在的事实)。这很有用,因为您不一定需要子节点的所有数据(特别是如果有很多的话)。Google的新版Firebase有办法做到这一点吗?我在想类似的东西:firebase.database().ref('/data/?shallow=true').once('value',function(snapshot){//dosomethingwiths

javascript - 将对象添加到 Firebase 时设置自己的 key - AngularFire

我可以使用以下方法将对象添加到我的Firebase数据存储区:varuniqueId={name:"aname",location:"newyork"}$scope.myItems.$add(uniqueId).then(function(firebaseId){//dosomethingonsuccess},function(){//dosomethingifcallfails});上面的代码会将一个对象添加到我的数据存储中,如果添加成功,将返回一个由Firebase生成的ID。我刚刚添加的对象保存在这个键下。有没有办法让我在添加到我的数据存储时指定键名是什么?