컴포넌트 호출 시
import { getCoin, getCoinPrice } from "APIs/get";
index가 있어서, 이렇게 선언하면서 사용이 가능해진다.
리액트 템플릿 사면, 이런 구조로 작성된 형태가 종종 있었는데, 왜 그렇게 했는지 이해가 된다.
이 구조가 가장 깔끔하다.
index.ts
import { getCoins } from "./getCoins";
import { getCoin, getCoinPrice } from "./getCoin";
export { getCoins, getCoin, getCoinPrice };
getCoins.ts
import axios from "axios";
export const getCoins = async () => {
try {
const response = await axios.get("https://api.coinpaprika.com/v1/coins");
return await response.data.slice(0, 100);
} catch (error) {
console.log("error", error);
}
};
getCoin.ts
import axios from "axios";
export const getCoin = async (coinID: string | undefined) => {
try {
const response = await axios.get(
`https://api.coinpaprika.com/v1/coins/${coinID}`
);
return await response.data.slice(0, 100);
} catch (error) {
console.log("error", error);
}
};
export const getCoinPrice = async (coinID: string | undefined) => {
try {
const response = await axios.get(
`https://api.coinpaprika.com/v1/tickers/${coinID}`
);
return await response.data.slice(0, 100);
} catch (error) {
console.log("error", error);
}
};
*error 부분은 아직 처리하지 않았다.
'React & TypeScript > TypeScript' 카테고리의 다른 글
[ESLint] naming-convention 설정방법 (0) | 2023.11.23 |
---|---|
[TypeScript] GENERIC Basic (그래서, T야?) (0) | 2023.08.22 |
비공개 - [TypeScript] 활용법 Basic (이 건 뭐고, 저 건 또 뭐야? 싶을 때 보는) (0) | 2023.07.10 |
[TypeScript] as 사용에 대한 이해 (feat. Type Assertions) (1) | 2022.12.27 |
[React / TypeScript] props를 구조분해할당으로 전달받을 때 Type Error (TS2322) (0) | 2022.12.20 |
[TypeScript] Tip - 자동으로 Type 추출 (0) | 2022.12.19 |
[React / TypeScript] interface로 타입 정의 중 발생한 이슈 (useParams, Params) - TS2344 (0) | 2022.12.09 |
댓글