22sook00 logo
SookDev

import 시 별칭설정

tag
bug-fix
date
Feb 25, 2023

🧩 as keyword

내장 메소드와 같은 이름을 가진 키워드를 import 할때 생기는 에러 해결
firebase 에서 uuid 를 자동으로 만들어주는 push 메소드와 데이터를 파이어베이스로 보내주는 메소드 set 을 import 했어야 했다.
하지만 set 을 import 할때 다음과 같이 에러가 발생하였다.
notion image
이미 set(), push() 라는 메소드가 있어 생겼던 에러로 판단,
as 를 이용하여 import 된 키워드를 재지정 하였다.
💡
import {name as changedName} from './another-file'.
import { ref, push, set as firebaseSet } from "firebase/database"; const dbRef = ref(database, `workoutForm`); const uuidRef = push(dbRef); const date = new Date().toISOString(); const onSubmit = useCallback( (data) => { const sendingData = { ...data, createdAt: date, updatedAt: date, }; firebaseSet(uuidRef, sendingData); }, [date, uuidRef] );
import 뿐만 아니라 export 로 사용 가능하다.
const Button = () => { return <button onClick={() => console.log('button clicked')}>Click</button>; } export as MyButtonexport {Button as MyButton};

🧩🧩 결론

🧸
as 는 타입스크립트나 export default 할때만 쓰이는줄 알았는데 import 할때도 별칭(alias) 를 사용하는줄 몰랐다. 이제 내장메소드와 동일한 값을 import 할 경우에 as 로 alias를 지정하도록 해야겠다!
 

📜 참조