2012-10-15 134 views
8

据我所知,当使用带有cfx run命令的Firefox扩展时,我可以登录到控制台。从Firefox扩展记录到控制台?

扩展与cfx xpi一起打包后,有没有办法登录到控制台?如果可能的话,记录到Firebug很好。

我发现了两篇博文(herehere)。两者都很老,不再工作。

我使用的是附加SDK和FF15的版本1.10。

回答

2

你试过console.log()与Firebug? (我知道你已经尝试Application.console.log()Firebug.console.log()已经)

我只是尝试在Web控制台上运行的Firebug 1.10.4 FF16和它似乎工作:Firefox Web Console

下面是Firebug的百科更多示例本身:FirebugWiki Console API

此外,你可以写在控制台的不同类型的消息,如:console.debug()console.info()console.warn()console.error()

+2

你不是这样做的一个附加,虽然正确吗?我可以从控制台本身(或从网页)'console.log()'没有问题。问题是从加载项的上下文中访问控制台。 –

+0

@DavidTuite:对不起,我错过了那部分。您是否已经尝试了[此线程](http://stackoverflow.com/questions/1182816/how-do-you-log-to-firebug-from-an-extension)中的建议? –

+0

这似乎只是建议使用像我链接的博客文章之一的'Firebug'对象。我似乎无法访问,即使我已经安装了Firebug。 –

0

如果运行从执行console.log附加代码,它在“消息”错误控制台窗口的标签发送了起来:

https://www.evernote.com/shard/s1/sh/c40c509d-9f14-4103-920b-4186a426226c/53572f96a3bbe0462103a8126b8e9822/res/fcbead60-d9d0-48be-b744-3fa6701fdf1b/skitch.png

+0

警告 - 这个答案是非常古老的,不再相关。第二个答案是你想要的。 – canuckistani

17

你需要做两件事情:

  1. enable logging for addons

    •在about:config中,添加一个新选项“extensions.sdk.console.logLevel”并赋予其值“all”

    •重新启动Firefox

  2. 在Firefox打开Browser Console

    •工具 - > Web开发人员 - >浏览器控制台

    •注:这是从通常的Web控制台用于调试网页不同

现在你应该看到附件登录了。

+0

感谢一堆,不知道它是浏览器控制台! – lfxgroove

+1

浏览器控制台的快捷键是Ctrl + Shift + J –

3

TLTR:

  1. 转到about:config URL和创建关键extensions.sdk.console.logLevel与价值all
  2. 见日志消息无论是在浏览器控制台(按Ctrl + Shift + J),或在终端,你开始火狐从。

cfx或其继任jpm在开发Firefox配置文件自动创建该配置的关键。

logging documentation

extensions.sdk.console.logLevel:如果置,这就决定了所有已安装的基于SDK的加载项的日志记录级别。

extensions.extensionID.sdk.console.logLevel,其中extensionID是加载项的程序ID。如果设置,则确定指定加载项的日志级别为 。如果同时设置了 首选项,则会覆盖全局首选项。