使用VSCode重构局部变量名称

时间:2017-11-21 00:00:18

标签: visual-studio-code

我有这种简单的情况,我想重构角色变量的名称:

enter image description here

看起来VSCode很聪明,知道不应该触及网址中的“角色”。

我只想在一个文件中重构变量的名称,在一个范围内,而不是整个文件,绝对不是多个文件!

如果我使用ctrl+H,它会将我带到一个菜单,默认情况下会在多个文件或整个文件中重构名称,但我只想在单个函数范围内重构名称!

4 个答案:

答案 0 :(得分:60)

使用rename symbol代替标准的查找/替换。默认情况下,重命名绑定到 F2

重命名符号只会触及示例中的本地roles引用。 VS Code附带了对JavaScript和TypeScript的重命名支持。其他语言可能需要安装语言扩展

答案 1 :(得分:7)

重命名符号,默认情况下使用“Ctrl + F2”定义。但是,请记住,您正在更改的变量/定义/函数等将在文件本身中更改,而不仅仅是范围。 VSCode现在没有用于重命名范围中的变量的实现(例如:函数内的变量)所以,请记住这一点。 http://link-to-your-image/image.jpg

答案 2 :(得分:4)

要打开用户和工作区设置,请使用以下Visual Studio Code菜单命令:

Windows / Linux 上:菜单文件首选项设置。在 macOS 上:代码首选项设置

您还可以从命令面板( Ctrl + Shift + P )中打开带有首选项,打开设置或使用键盘快捷键( Ctrl + )。

Enter image description here

在搜索栏中,输入settings.json,然后在下面的代码中添加以下代码:

{
  "command": "editor.action.changeAll",
  "key": "ctrl+f2",
  "when": "editorTextFocus && !editorReadonly"
}

{
  "command": "editor.action.rename",
  "key": "f2",
  "when": "editorHasRenameProvider && editorTextFocus && !editorReadonly"
}

在快捷键中。

F2 似乎可以在所有文件中使用,并且 Ctrl + F2 仅适用于当前文件。

答案 3 :(得分:2)

对于MacOS用户。使用Fn +⌘在代码块内重命名变量名。