设置 Firefox 开发者控制台的文本输入值?

设置 Firefox 开发者控制台的文本输入值?

我目前正在将我的 Web 开发工作从传统 IDE 转移到 Web 浏览器控制台。这涉及频繁编辑现有源代码,这意味着...

  1. 记录源,例如console.log(myFunc.toString())
  2. 将文本复制到剪贴板,至少可以通过两种方式完成:
    • 单击RMB控制台消息并选择Copy Message(不幸的是,这也会复制一些垃圾)
    • 从消息顶部拖到LMB底部并点击Ctrl+C(遗憾的是,通过拖动选择文本容易出错并且总体上很耗时)
    • 受阻document.execCommand('复制')只能通过点击事件
  3. 将文本粘贴到控制台输入中

我对我想要的工作流程进行了排序:

  • A级:我可以通过调用单个函数直接填充控制台输入,无需额外的鼠标或键盘交互,例如edit("some text")直接复制和粘贴some text
  • B 级:我可以通过调用单个函数将一些文本复制到剪贴板没有DOM 更改,仅Ctrl+V对于粘贴剪贴板内容是必要的,例如copy("some text")
  • C级:与 B 层相同,但允许 DOM 更改
  • X 级:涉及浏览器扩展的任何内容,以实现 A 层、B 层或 C 层解决方案

答案1

A 层解决方案无法实现,因为这需要将输入到命令行中的代码自动替换为其他代码,而这是不可能的。也就是说,没有内置的功能来实现这一点,并且扩展程序目前(从 Firefox 69 开始)无法访问命令行

虽然可以通过copy()命令。因此,如果您想在控制台中编辑某个函数,只需调用copy(myFunc.toString())然后通过Ctrl+粘贴它V

当然,这有一定的限制,因为您只能编辑普通的全局函数,而不能编辑箭头函数、对象方法或类似的东西。

对于真正的实时编辑功能,你必须等待错误 771339更优越错误 1559482将要执行。

相关内容