≪ Today I learned.
RSS購読
    公開日
    タグ
    著者
    ダーシノ

    VSCodeのリファクタリング機能でリネームするとエイリアスが残る

    VSCodeのリファクタリング機能(F2)を使ってリネームすると、JavaScriptやTypeScriptの変数、関数名などを一括変更できる。

    しかし、リネームした後にエイリアスされ変更前の名前が保持されてしまう。

    import { before } from './module.js'
    const { before } = obj
    
    
    // Refactoring
    
    import { after as before } from './module.js'
    //             ^^^^^^^^^^
    const { after: before } = obj
    //             ^^^^^^
    console.log(before)

    解決方法

    settings.jsonuseAliasesForRenamesを無効化することでエイリアスを削除できる。

    {
      "javascript.preferences.useAliasesForRenames": false,
      "typescript.preferences.useAliasesForRenames": false,
    }