• ..

NuxtJS

    TypeScript の paths を効かせる

    以下の手順が必要です。

    • tsconfig.jsonpathsを記述
    • package.jsonaliasを記述

    tsconfig.json に paths を記述

    こっちはやっている前提みたいな感じですが、以下のように設定するとfooという名前で TypeScript がsrc/foo/index.tsを見てくれるようになります。

    {
      "baseUrl": ".",
      "paths": {
        "foo": ["src/foo/index.ts"]
      }
    }

    ですが、これはあくまで TypeScript で解決できるようにしたという話なだけで、 Parcel にとっては何の関係もない設定なので、Parcel 側では「foosrc/foo/index.tsなんだな」という紐づけができていません。

    package.json に alias を記述

    Parcel の紐づけは、pacakge.jsonaliasというセクションを置く必要があります。

    {
      "alias": {
        "foo": "./src/foo/index.ts"
      }
    }

    これで Parcel を起動した時にfooという名前でインポートできるようになっているはずです。

    ちなみにこのaliasは相対パス./../から書く必要があるようです。