如何使用 vscode 重新排序参数?

mik*_*ana 12 javascript refactoring typescript visual-studio-code

我有一个简单的函数,其参数的排序不直观:

async blockUser(currentUser: User, userToBlock: User) { ... }

我想(使用适当的重构工具而不是正则表达式)重构该函数,并在每次调用该函数时,对新函数签名的参数进行重新排序:

async blockUser(userToBlock: User, currentUser: User) { ... }

我本来希望 vsCode 能在“重构”菜单中找到它,但找不到它。

在此输入图像描述

如何使用 vscode 重新排序参数?

小智 3

您可以尝试 Shifter 扩展https://marketplace.visualstudio.com/items?itemName=Gruntfuggly.shifter

我建议使用对象作为函数的参数,这将帮助您避免这种情况。

interface User {
    name: string;
    age: number;
}

interface BlockUserParams {
    currentUser: User;
    userToBlock: User;
}

function blockUser({currentUser, userToBlock}: BlockUserParams) {
    console.log(currentUser, userToBlock);
}
Run Code Online (Sandbox Code Playgroud)

  • 这是否也会在使用函数的地方重构代码,或者只是转置两个参数? (4认同)