macmeals / todo_context_typescript

TodoリストのTypeScript化
0 stars 0 forks source link

axiosがインストールされていなそうです #5

Closed mizushima1226 closed 2 years ago

mizushima1226 commented 2 years ago

アプリを起動すると以下のようなエラーとなりました〜 axios入っていなそうです👀

ERROR in src/hook/useImageGet.ts:3:19
TS2307: Cannot find module 'axios' or its corresponding type declarations.
    1 | // ポケモンAPIから画像情報を取得する部分をカスタムHook化
    2 | // このカスタムHookはポケモンAPIからピカチュウ画像(画像URL)を取得する為のカスタムHook
  > 3 | import axios from "axios";
      |                   ^^^^^^^
    4 |
    5 | // 無駄なレンダリングを防ぎ、State状態を管理する。
    6 | import { useState } from "react";

ERROR in src/hook/useTextGet.ts:2:19
TS2307: Cannot find module 'axios' or its corresponding type declarations.
    1 | // ポケモンAPIから画像情報を取得する部分をカスタムHook化
  > 2 | import axios from "axios";
      |                   ^^^^^^^
    3 |
    4 | // 無駄なレンダリングを防ぎ、State状態を管理する。
    5 | import { useState } from "react";
mizushima1226 commented 2 years ago

一応、

npm install axios

これだけだと改善されず

https://bobbyhadz.com/blog/typescript-cannot-find-module-axios に従うと解消されたようです🤔

macmeals commented 2 years ago

お疲れ様です。以下の通り修正してPullリクエストをあげました。ご確認いただけますでしょうか? 1)axiosのインストール npm install axios

2)以下のカスタムHookの修正 ①useTextGet.ts

import axios from "axios";

type JsonPlace = {
  userId: number;
  id: number;
  title: string;
  completed: boolean;
};

try {
      const { data } = await axios.get<JsonPlace[]>(url);
      const title = data[1].title;
      setTextTitle(title);

②useImageGet.ts


import axios from "axios";
type Pokemon = {
    sprites: { front_default: string; back_female: string };
  };

const { data } = await axios.get<Pokemon>(url);

送って頂いたURLを参考に実施してみました。ただ、一つ疑問なのですが、おっしゃる通りaxiosがインストールされておらず、 インストールしたのですが、私の環境ではエラーが出ませんでした。エラーが出ていればインストール忘れてた!と気付けたのですが・・🤔

mizushima1226 commented 2 years ago

ん〜〜想像ですが、global installされてたりしませんか? global installされたライブラリをプロジェクトで参照したことは過去に一度もないですが。。。

macmeals commented 2 years ago

ご回答ありがとうございます。多分それが原因ですね・・あまりその辺り気を配っていませんでした。次からは気をつけたいと思います とりあえず一旦マージして、このissueはクローズします!