Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio code 新VSCode设置编辑器:每次击键时调用onDidChangeConfiguration_Visual Studio Code_Vscode Extensions - Fatal编程技术网

Visual studio code 新VSCode设置编辑器:每次击键时调用onDidChangeConfiguration

Visual studio code 新VSCode设置编辑器:每次击键时调用onDidChangeConfiguration,visual-studio-code,vscode-extensions,Visual Studio Code,Vscode Extensions,在我的扩展插件中,我注册了一个onDidChangeConfiguration事件侦听器: export function activate(context: vscode.ExtensionContext) { vscode.workspace.onDidChangeConfiguration(event => { ... } 在vscode 1.27中,使用新的 更改属性值时,每次击键时都会调用callbackonDidChangeConfiguration,这改变了旧的

在我的扩展插件中,我注册了一个
onDidChangeConfiguration
事件侦听器:

export function activate(context: vscode.ExtensionContext) {
  vscode.workspace.onDidChangeConfiguration(event => {
    ...
}
在vscode 1.27中,使用新的 更改属性值时,每次击键时都会调用callback
onDidChangeConfiguration
,这改变了旧的行为:

在以前的vscode版本中(以及在使用命令
打开设置(JSON)
打开的设置编辑器中),保存新设置时会触发更改配置事件

是否有方法至少在属性编辑结束时触发
onDidChangeConfiguration
?(返回击键或焦点离开)

更新:一个特定的用例 我的一个属性表示makefile生成目录,当我将值
onDidChangeConfiguration
cd更改为该目录并启动make命令以配置cpp intellisense时

这一新行为带来了令人讨厌的副作用和糟糕的用户体验:下图给出了一个想法:


这是一个非常及时的问题,因为我刚刚在VS代码中合并了一个PR来解决这个问题。文本输入设置的去抖动速率已更改为1s,因此触发更改的频率应大大降低

您可以在下周的内部人员构建中看到变化,或者在几周后的1.28中看到变化


谢谢@Rob,去抖动减弱了问题,但我的情况并不能解决问题,请查看问题更新以获得想法。您能评论并帮助我决定如何继续吗?一个更长的去抖动,一个带有“保存按钮”的不同模式,供个人设置选择,欢迎任何其他想法。。。