본문 바로가기
반응형

dev/fe12

let과 var 호이스팅 const : 변할 수 없는 상수 let : 블록 스코프의 범위를 가지는 지역 변수 var: es5 와 이전의 변수 → 블록 스코프라는 개념이 없다. 호이스팅이 될 때 함수만 지역변수, 나머지는 전역변수로 인식을 한다. 호이스팅 코드가 실행되기 전 선언된 변수들을 최상단으로 끌어올린다. 예를 들어 코드가 실행이 되고 A라는 변수를 호출 하면 최상단에 올라가 있는 변수를 가져온다. 호이스팅에 대한 예시 console.log(a); // undefine var a = 1; console.log(a); // 1 위 코드가 실행을 해도 에러가 발생하지 않는 이유는 호이스팅때문이다. 코드가 실행되기 전에 a값이 있는 것을 엔진이 알고 있기 때문이다 console.log(a) a=1 var a console.log.. 2023. 5. 11.
another-multi-provider 사용시 타입에러 import MultiProvider from 'another-multi-provider'; 아래처럼 문제가 발생을 하는 경우가 있다. 결국 타입이 제대로 지정이 안되었다고 해서 아래처럼 타입을 정리만 하면 된다. Type '{ children: Element; providers: FC[]; }' is not assignable to type 'IntrinsicAttributes & MultiProviderProps'. Property 'children' does not exist on type 'IntrinsicAttributes & MultiProviderProps'.ts(2322) 결국 위 내용은 children이라는 타입이 없다는 것이라서 타입을 만들어서 선언을 해줬다. declare module.. 2023. 4. 30.
NextJS에서 로그인 유지하기 현재 개발을 하다보니 로그인 후에 잠깐 로그인에 대한 상태가 초기화 되는 문제가 있었다. 정확히 말하자면 로그인은 되어있고, context에 상태가 정상적으로 저장되어있는데, 새로고침시 잠깐씩 isLogined가 false로 나오는 문제였다. 당황을 한 이유는 로그인이 되어 있지 않다면 로그인 페이지로 이동을 시켰는데, 정상적인 로그인이 되어 있어도 잠깐의 상태변화로 페이지 이동이 되어버리는 버그가 있었다. 그래서 상태는 잘 관리가 되고 있으니, 다른 페이지에서 token을 가지고 있는지 확인을 하여, 체크를 하는 방식을 끼워 넣었다. 일단 문제 없이 돌아가는데, 조금 지저분해보여서 추후에 수정을 해야겠다. useEffect 부분에서 토큰이 존재하는지 체크하기로 했다. export default func.. 2023. 4. 26.
nextJS svg 불러오기가 안될 때 /** @type {import('next').NextConfig} */ const nextConfig = { reactStrictMode: true, webpack: config => { config.module.rules.push({ test: /\.svg$/i, issuer: /\.[jt]sx?$/, use: ['@svgr/webpack'], }); return config; }, }; module.exports = nextConfig; 2023. 4. 26.
반응형