Closed3

TypeScriptのアップデートでエラー

shosho

というわけでファイルを修正し、パッケージを再インストールします。

package.json
-   "typescript": "~3.8.2",
+   "typescript": "~4.1.0",

再インストール

$ yarn install
$ rm -rf node_modules # 本来いらないが、以下のエラーを出すため
$ yarn build

# 一部省略・・
Failed to compile.

./src/state/usecase/hoge/api.ts
  Line 0:  Parsing error: Cannot read properties of undefined (reading 'map')

エラー・・

shosho

こちらが参考になりそうです。
https://stackoverflow.com/questions/62079477/line-0-parsing-error-cannot-read-property-map-of-undefined/63660413#63660413

該当のエラーが出たコードは以下のようになっていました。

export type ResponseType = {
    users: [{
        name: string
    }]
}

TypeScriptの4.0より、上記の定義ではusersは配列ではなくタプルとなるようです。

const a: string[] = ["hoge"]; // 配列
const b: [string] = ["hoge"]; // タプル

配列とタプルの違いについてはググっていただくとして、おそらく上記の理由によりコンパイルエラーになった・・ように思います。

というわけで、修正方針としては以下のようになります。

// User typeを定義
type User = {
    name: string
}
// レスポンスの方を[{name: string}]からUser[]に変更する
export type ResponseType = {
    users: User[]
}
このスクラップは2023/01/11にクローズされました