TypeScript 当通过重命名解构的参数进行重构时,解决方案冗长,

xggvc2p6  于 8个月前  发布在  TypeScript
关注(0)|答案(1)|浏览(127)

搜索词

重构,重命名冗余的
重命名解构赋值

建议

目前VSCode在重命名变量方面做得非常好。然而,在重命名时,解构赋值会变得过于冗长/误导。
例如:

  1. function contrivedExample(props: PropType) {
  2. const { prop1, prop2, prop4 } = props;
  3. return { prop3: prop4 };
  4. }

当将 prop4 重命名为 prop3 时,它正确地变为:

  1. function contrivedExample(props: PropType) {
  2. const { prop1, prop2, prop3 } = props;
  3. return { prop3: prop3 };
  4. }

但如果它能简单地变为:

  1. function contrivedExample(props: PropType) {
  2. const { prop1, prop2, prop3 } = props;
  3. return { prop3 };
  4. }

那就更好了。
注意:这是VSCode团队的 originally requested ,但他们似乎认为这是一个TypeScript级别的功能。

使用案例,示例

请参考上面的示例。这只是一种便利性。

检查清单

我的建议满足以下准则:

  • 这不会对现有的TypeScript/JavaScript代码造成破坏性的更改
  • 这不会改变现有JavaScript代码的运行时行为
  • 这可以在不根据表达式的类型发出不同的JS的情况下实现
  • 这不是一个运行时特性(例如库功能,带有JavaScript输出的非ECMAScript语法等)
  • 这个特性将与 TypeScript's Design Goals 的其他部分保持一致。
42fyovps

42fyovps1#

@mjbvz 我希望在重命名时可以配置这个功能 - 一种你可以告诉原始类型声明是否也应该被重命名的功能。

相关问题