6

似乎最近我在 Chrome DevTools 中使用控制台时一直挂在自动完成下拉菜单上。似乎突然变得更加激进了。直到前几天我试图将命令快速输入控制台以进行测试之前,我从未遇到过该功能的问题。我不确定为什么它不能正常工作。当我点击Enter自动完成时,不断弹出并且不执行我输入的内容。Enter起初,每当我点击执行我的代码时,似乎都会激活自动完成功能。但是,它开始看起来只是在我以 . 结束语句时才弹出;

例如,在控制台中输入以下语句并按下Enter不会导致自动完成下拉菜单激活:

console.log('did it')

但是,如果我添加一个分号,那么只要我;在几毫秒后按下自动完成功能就会立即弹出:

console.log('did it');

此时,如果我按下Enter它,它将简单地选择第一个条目,$并将其添加为下一条语句,因此我们得到:

console.log('did it');$

自动完成阻止执行

我知道这并不是什么大问题,毕竟,您需要分号的唯一原因是输入多个语句。但是,我觉得过去我总是;在简单的单个测试语句的末尾添加一个分号,例如console.log上面显示的并没有激活自动完成,只需点击即可执行它Enter

我绝对觉得的控制台的自动完成功能比以前更激进了。

有没有其他人觉得控制台中的自动完成功能突然太频繁地激活了?我想知道这是否真的可以在 Chrome 中改变,或者我是否以某种方式让我的控制台开始以这种方式使用设置或其他东西?

在写这篇文章时,我注意到它似乎不仅是在;自动完成似乎之前没有弹出之后。如果您参考Chrome DevTools - 使用控制台,您会看到自动完成仅被提及一次:

当按下 Return 或 Enter 键时,控制台会尝试计算您在 shell 提示符下输入的任何 JavaScript 表达式。控制台提供自动补全和制表符补全。当您键入表达式时,会自动建议属性名称。如果有多个具有相同前缀的属性,请按 Tab 键循环浏览它们。按右箭头键接受当前建议。如果只有一个匹配的属性,也可以通过按 Tab 键来接受当前建议。

在此之后,它继续说我们可以使用Shift+Enter来输入多行表达式,它给出了以下示例:

ShiftEnter组合
(来源:google.com

这是我肯定知道的事情,我过去做过很多次,自动完成没有问题。当我尝试在上图中键入代码时,我得到的结果是:

var add = function (val1, val2) {

然后,当我按Shift+Enter而不是像我以前那样肯定会换行时(至少对我而言)。显然,只要启动新语句,它就会弹出。最近有没有其他人开始对这个功能感到非常恼火?有谁知道我是否有办法导致这种行为?

4

1 回答 1

4

谁在删除他们的答案之前回答了我的问题。我想结束这个问题,因为它已经得到回答。正如上面的评论和已删除的答案中所述,这确实是一个错误。其他任何因为遇到问题而出现在这里的人都必须等待发布版本降到他们的 Chrome 版本,当然,Canary 会首先获得它。您可能也可以安装早期版本的 Chrome 来解决这个问题。我知道这与编码没有直接关系,但是当其他人可能会发现这些信息有用时,我认为现在没有理由关闭它。

链接到引用此问题的 Chrome 问题:https ://code.google.com/p/chromium/issues/detail?id=263925

于 2013-07-30T03:28:37.120 回答