inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

vanilla-extract 못찾는 문제

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요~ 강의 잘 보고 있습니다! vanilla-extract 적용해보려고 하는데 패키지 설치하고 config설정까지 했는데 해당 에러가 나서 질문드립니다. next.config.ts파일과 globalTheme.css.ts, layout.ts중에 문제가 있을까요?? 파일 이름도 문제가 없고 코드 그대로 사용했는데도 해당 에러가 나서 next15에서 vanilla-extract 적용을 할 수 없는건지 궁금해서 여쭤봅니다.. 감사합니다 // package.json // next.config.ts import type { NextConfig } from "next"; const { createVanillaExtractPlugin // eslint-disable-next-line @typescript-eslint/no-require-imports } = require('@vanilla-extract/next-plugin'); const withVanillaExtract = createVanillaExtractPlugin(); const nextConfig: NextConfig = { /* config options here */ experimental: { serverActions: { bodySizeLimit: '10mb', // Set the body size limit for server actions } }, async rewrites() { return [ { source: '/upload/:slug', destination: `${process.env.NEXT_PUBLIC_BASE_URL}/upload/:slug`, // Matched parameters can be used in the destination }, ] }, }; module.exports = withVanillaExtract(nextConfig); // globalTheme.css.ts import {assignVars, createGlobalTheme, createGlobalThemeContract, globalStyle} from "@vanilla-extract/css"; export const global = createGlobalThemeContract({ background: { color: 'bg-color' }, foreground: { color: 'fg-color' }, }) const whiteGlobalTheme = { background: { color: 'rgb(255, 255, 255)' }, foreground: { color: 'rgb(0, 0, 0)' }, } const darkGlobalTheme = { background: { color: 'rgb(0, 0, 0)' }, foreground: { color: 'rgb(255, 255, 255)' }, } createGlobalTheme(':root', global, whiteGlobalTheme); // 실제 적용 globalStyle(':root', { '@media': { '(prefers-color-scheme: dark)': { vars: assignVars(global, darkGlobalTheme), } } }) globalStyle('*', { boxSizing: 'border-box', padding: 0, margin: 0, }) globalStyle('html', { '@media': { '(prefers-color-scheme: dark)': { colorScheme: 'dark', } } }); globalStyle('html, body', { maxWidth: '100dvw', overflowX: 'hidden', }) globalStyle('body', { color: global.foreground.color }) globalStyle('a', { color: 'inherit', textDecoration: 'none', }) // layout.tsx import type {Metadata} from 'next' import {Inter} from 'next/font/google' import './globalTheme.css'; import {MSWProvider} from "@/app/_component/MSWComponent"; import AuthSession from "@/app/_component/AuthSession"; if (process.env.NEXT_RUNTIME === 'nodejs' && process.env.NODE_ENV !== 'production' && process.env.MSW_ENABLED !== 'false') { const {server} = require('@/mocks/http') server.listen() } const inter = Inter({subsets: ['latin']}) export const metadata: Metadata = { title: 'Create Next App', description: 'Generated by create next app', } type Props = { children: React.ReactNode, }; export default function RootLayout({children}: Props) { return ( <html lang="en"> <body className={inter.className}> <MSWProvider> <AuthSession> {children} </AuthSession> </MSWProvider> </body> </html> ) }

  • react
  • next.js
  • react-query
  • next-auth
  • msw
신재훈 댓글 2 좋아요 0 조회수 255

git허브 커밋에서

미해결

제로베이스부터 배우는 웹개발의 개념과 바이브 코딩

커밋을 하고 나서 sure all&commit changes를 누르면 저렇게 화면이 분활되고 아무것도 작성이 안되는 상태가 되는데 어떤 이유인지 잘 모르겠습니다...

  • react
  • 웹앱
  • next.js
  • cursor
  • 인공지능(ai)
CHOI 댓글 2 좋아요 0 조회수 81

getPostMetadata 내부 함수에서 클로저를 활용하는 방식이 더 나은 선택일까요?

미해결

Next.js 완벽 마스터 (v15): 노션 기반 개발자 블로그 만들기 (with 커서AI)

강의 영상에서 getPostMetadata 메서드 내부에서 getCoverImage 메서드를 선언하여 커버 이미지를 다루고 있는데, 저는 이 함수가 내부에 선언된 이유를 두 가지로 이해했습니다. 캡슐화 및 스코프 제한 : 외부에서 사용할 필요가 없는 함수이므로 내부에 선언해 함수의 범위를 명확히 제한 가독성 향상 : 커버 처리 로직을 분리하여 주 함수의 가독성을 개선 그런데 영상을 보면서 든 궁금증이 한 가지 있습니다. 현재 코드에서는 getCoverImage 에 page.cover 를 매개변수로 전달하고 있는데, getPostMetadata 내부에서만 사용되는 함수라면, 클로저를 이용해 page 에 직접 접근하는 방식이 더 자연스럽지 않나요? function getPostMetadata(page: PageObjectResponse): Post { const getCoverImage = () => { if (!page.cover) return ''; switch (page.cover.type) { case 'external': return page.cover.external.url; case 'file': return page.cover.file.url; default: return ''; } }; return { coverImage: getCoverImage(), // ... }; } 이렇게 하면 page.cover 를 매개변수로 전달하지 않아도 되어 더 간결하고, 함수 내부에서도 page 에 자유롭게 접근하여 처리할 수 있다고 생각합니다. 물론 정답은 없겠지만 클로저를 활용하여 외부 스코프에 직접 접근하는 방식 명확하게 매개변수를 전달하여 의도를 분리하는 방식 이 두 가지 방식 중 위 상황에서는 어떤 방식이 더 바람직한지, 혹은 상황에 따라 어떤 기준으로 선택해야 하는지 궁금합니다!

  • react
  • 블로그
  • next.js
  • cursor
  • cursorai
  • 클로저
강병준 댓글 1 좋아요 0 조회수 71

교안 어디있나요?

미해결

떠먹는 자바스크립트 비동기

교안 어디서 다운받나요?

  • javascript
  • ajax
  • async-await
  • https
  • promise
  • fetch-api
luna 댓글 2 좋아요 1 조회수 114

3.4) node.js 모듈 시스템 이해하기 / 실습 중 오류가 없어요 ..

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

package.json 파일에 맨밑 "type": "module" 를 삽입하고 npm run start 를 하면 강의에는 esm과 js모듈을 같이 사용할 수 없기 때문에 오류난다 하셨는데 정상적으로 작동하는 현상이 발생합니다

  • javascript
  • react
  • node.js
이근호 댓글 2 좋아요 0 조회수 174

인텔레리제이 세팅환경도 알려주세요

미해결

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

인텔레리제이 세팅환경도 알려주세요

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
yoo 댓글 2 좋아요 0 조회수 132

린캔버스 수정 시 CanvasDetail 컴포넌트 리랜더링 질문

미해결

React 완벽 마스터: 기초 개념부터 린캔버스 프로젝트까지

안녕하세요. 린캔버스 수정 수업 관련해서 질문이 있어서 문의 드립니다. const handleCanvasChange = async updatedCanvas => { try { await updateCanvas(id, updatedCanvas); setCanvas(updatedCanvas); } catch (err) { alert(err.message); } }; addNote, deleteNote, updateNote 등의 이벤트가 발생할 경우 setCanvas를 통해 useState에 선언된 canvas 값을 바꾸는데 그렇게 되면 CanvasDetail과 그 하위에 선언된 자식 컴포넌트들이 전부 리랜더링되는 것 같은데 강의에서는 그렇게 보이지 않아서 문의 드립니다. const [canvas, setCanvas] = useState(); canvas가 setCanvas 메서드를 통해서 상태가 변하면 리랜더링 되면서 하위 컴포넌트인 Note의 isEditing 값이 다시 false로 초기화되는데 강의에서는 여전히 true값이 남아있는 것 같습니다. 전체적인 코드를 동일하게 작성한 것 같은데 차이점이 발생하는 이유가 무엇일까요?

  • react
  • React-Context
  • react-router
  • tailwindcss
  • react-query
inflearn1 댓글 2 좋아요 0 조회수 80

강의코드

미해결

React Native with Expo: 제로초에게 제대로 배우기

FlatList로 게시글 작성 모달 강의의 시작과 같은 코드를 어디서 받을 수 있나요? 스크롤해서 보이는 링크에는 완성된 전체 코드만 있어서요. 일일이 지우고 따라치려해도 나머지 부분이 완성되어 있어서 애뮬레이터에서 진행상황을 볼 수가 없어요...

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
khs1003k 댓글 2 좋아요 0 조회수 163

3장 Querydsl 검색처리 수업따라하다가 에러가 나요..

미해결

코드로 배우는 React 19 with 스프링부트 API서버

TodoServiceImpl.java 작성중에 중간에 소스가 갑자기 바뀌었는데요. 그리고 아래와 같이 작성하셔서 따라 작성하였는데요. PageResponseDTO<TodoDto> responseDTO = PageResponseDTO.<TodoDto>withAll() .dtoList(dtoList) .pageRequestDTO(pageRequestDTO) .totalCount(result.getTotalElements()) .build(); 뭘 놓친건지... 위와 같이 에러 나서 진행이 안돼요. 카페 들어가서 해당 강의 소스도 찾아봤는데 수업하신 내용이랑 조금 다르게 되어있긴 하지만 사용법에는 큰 차이는 없어 보이거든요 ㅠ lombok도 많이 안써봐서... 잘 모르겠어요..

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
psykid777 댓글 2 좋아요 0 조회수 116

웹훅 동기화 에러

미해결

Next.js 15로 완성하는 실전 YouTube 클론 개발

아래와 같은 에러 발생한다면 drizzle-orm 를 최신버전으로 업데이트 하시면 해결됩니다.

  • react
  • postgresql
  • 클론코딩
  • next.js
  • tailwindcss
  • drizzle
재쿤 댓글 1 좋아요 1 조회수 250

중급 homework 과제

해결됨

[코드캠프] 부트캠프에서 만든 '완벽한' 프론트엔드 코스

중급편 homework 과제를 하는데 저번에 할때는과제1피그마, 과제2피그마,,,,, 이렇게있었던것같은데 지금은 안보여서 질문드립니다. 과제숫자별로 노션만 보면 어떤 페이지를 만들어야 하는지 도통 감이 오지 않습니다....

  • react
  • cdn
혜준 댓글 2 좋아요 0 조회수 111

이 강의를 수강하려면 React와 javascript만 알고있으면 되나요?

해결됨

Next.js 15로 완성하는 실전 YouTube 클론 개발

프로젝트 하나 남기고 싶어서 강의는 구매했는데 React를 잘 몰라서 공부를 하고 난 뒤 강의를 수강하려고 합니다. 강의 설명에 언급된 React, javascript 외 추가적으로 더 알아야하는 사전 지식이 있을까요?

  • react
  • postgresql
  • 클론코딩
  • next.js
  • tailwindcss
  • drizzle
박민석 댓글 1 좋아요 1 조회수 301

안드로이드 에뮬레이터 오류

미해결

처음 만난 리액트(React)

안녕하세요 vscode에서 안드로이드 에뮬레이터를 사용해서 켰는데 이렇게 뜨는데 무슨 오류일까요 ㅠㅠ 계속 안 고쳐지네요ㅠ ㅠ

  • HTML/CSS
  • javascript
  • react
임채연[컴퓨터시스템공학과] 댓글 1 좋아요 0 조회수 132

승인된 리디렉션 URI등록 이유

미해결

제로베이스부터 배우는 웹개발의 개념과 바이브 코딩

승인된 리디렉션 URI에서 왜 3가지 https를 등록해 주는것인지 궁금합니다!

  • react
  • 웹앱
  • next.js
  • cursor
  • 인공지능(ai)
CHOI 댓글 2 좋아요 0 조회수 253

npm run dev 실행 시 포트가 안뜨는 문제

미해결

웹 게임을 만들며 배우는 React

package.json { "name": "tic-tac-toe", "version": "1.0.0", "main": "index.js", "scripts": { "dev": "webpack serve --env development" }, "author": "heewon", "license": "ISC", "description": "", "dependencies": { "react": "^19.1.0", "react-dom": "^19.1.0" }, "devDependencies": { "@babel/core": "^7.27.3", "@babel/preset-env": "^7.27.2", "@babel/preset-react": "^7.27.1", "@pmmmwh/react-refresh-webpack-plugin": "^0.6.0", "babel-loader": "^10.0.0", "react-refresh": "^0.17.0", "webpack": "^5.99.9", "webpack-cli": "^6.0.1", "webpack-dev-server": "^5.2.1" } } webpack.config.js const path = require('path'); const ReactRefreshWebpackPlugin = require('@pmmmwh/react-refresh-webpack-plugin'); module.exports = { name: 'tictactoe-dev', mode: 'development', devtool: 'inline-source-map', resolve: { extensions: ['.js', '.jsx'], }, entry: { app: './client', }, module: { rules: [{ test: /\.jsx?$/, loader: 'babel-loader', options: { presets: [ ['@babel/preset-env', { targets: {browsers: ['last 2 chrome versions']}, debug: true, }], '@babel/preset-react', ], plugins: ["react-refresh/babel"] }, exclude: path.join(__dirname, 'node_modules'), }], }, plugins: [ new ReactRefreshWebpackPlugin(), ], output: { path: path.join(__dirname, 'dist'), filename: '[name].js', publicPath: '/dist', }, devServer: { devMiddleware: { publicPath: '/dist' }, static: { directory: path.resolve(__dirname) }, hot: true } }; client.jsx const React = require('react'); import { createRoot } from 'react-dom/client'; import TicTacToe from './TicTacToe'; createRoot(document.querySelector('#root')).render(<TicTacToe />); npm run dev 실행 시 tic-tac-toe % npm run dev > tic-tac-toe@1.0.0 dev > webpack serve --env development 까지만 터미널에 출력되고, 서버가 켜지지 않습니다. npm 다시 설치도 해봤는데, 여전히 문제가 동일합니다. 다른 디렉터리에 해둔 강의들은 서버가 잘 출력되는데, 뭐가 문제인지 잘 모르겠습니다 ㅠㅠ 더 필요한 파일이 있다면 올리도록 하겠습니다.

  • react
gmldnjs0402 댓글 2 좋아요 0 조회수 262

스토리북 테스트에 대한 질문

해결됨

실무에 바로 적용하는 스토리북과 UI 테스트

강의 중 스토리북이 테스트를 위한 라이브러리라고 말씀하신 부분이 있는데요, 스토리북 테스트 라이브러리가 yarn pnp와 의존성 간의 충돌이 있는 것으로 보입니다. 혹시 yarn pnp 환경에서 스토리북으로 컴포넌트에 대한 테스트를 진행하고 싶으면 어떻게 진행하면 좋을까요?

  • react
  • typescript
  • tailwindcss
  • storybook
  • ui-testing
김동훈 댓글 2 좋아요 0 조회수 122

2-11 InferGetServerSidePropsType<T> 제네릭 관련 질문

해결됨

한 입 크기로 잘라먹는 Next.js

안녕하세요 getServerSideProps 함수로 반환된 props 타입을 정의하는데 있어서 이해가 잘 가지 않아 질문드립니다. props의 타입을 지정할 때, next js의 내장타입을 사용하면서 해당 타입의 제네릭으로 InferGetServerSidePropsType<typeof getServerSideProps> 이렇게 작성하는데, <typeof getServerSideProps> 의 값은 function인데 어떻게 props 내부의 값을 전달할 파악할 수 있는지 궁금합니다. 제가 제네릭에 대한 이해도가 낮아서 그런거 같기도 한데,,, 답변 주시면 감사드리겠습니다.

  • react
  • typescript
  • next.js
먼재 댓글 2 좋아요 0 조회수 81

커서 강의 질문

해결됨

[코드캠프] 부트캠프에서 만든 '완벽한' 프론트엔드 코스

선생님 프론트엔드 커서AI활용 코스의 경우에는 커서AI로 일일이 바이브 코딩하는건가요?? AI로 코딩할일이 뭐가 있을지 궁금합니다.

  • react
  • react-native
  • 하이브리드-앱
  • graphql
  • next.js
코드스타크 댓글 2 좋아요 0 조회수 118

Supabase를 사용하여 서비스에 사용자 인증 기능을 구현

미해결

제로베이스부터 배우는 웹개발의 개념과 바이브 코딩

선생님, 안녕하세요. Supabase를 사용하여 제 서비스에 사용자 인증 기능을 구현하려고 합니다. 제가 이해한 내용이 맞는지 확인 부탁드려요! (1)인증 방식 설정: Supabase 프로젝트 대시보드의 Authentication 섹션 내 Providers 탭으로 이동하고, 여기서 제 서비스 사용자들이 이용할 로그인 방식(예: 이메일/비밀번호, Google/Kakao 등의 소셜 로그인, Magic Link 등)을 선택하고 필요한 설정을 완료하여 활성화 한다. (2) 애플리케이션 프론트엔드 구현: 제 웹사이트코드(나 앱의 프론트엔드 예: JavaScript, React, Flutter 등)에서 Supabase 클라이언트 라이브러리를 가져와 사용하고, 사용자들이 회원가입, 로그인, 로그아웃 등을 할 수 있는 UI(예: 로그인 페이지, 회원가입 폼)를 만들고, 이 UI와 Supabase 클라이언트 라이브러리의 함수들 연동하여 실제 인증 기능을 구현한다. (3) 사용자 데이터 관리: 사용자가 위 프론트엔드를 통해 회원가입하면, 그 정보는 Supabase 내의 auth.users라는 전용 테이블에 자동으로 저장되는 것이 맞나요? 결론적으로, 제 서비스의 최종 사용자들은 제가 프론트엔드에 구현한 로그인/회원가입 시스템과 Supabase Auth를 통해 별도의 사용자 계정을 갖고 서비스를 이용하게 되는 구조라고 이해하면 될까요? 혹시 제가 잘못 이해하고 있거나, 추가적으로 고려해야 할 중요한 사항이 있다면 알려주시면 감사하겠습니다.

  • react
  • 웹앱
  • next.js
  • cursor
  • 인공지능(ai)
CHOI 댓글 2 좋아요 0 조회수 414

일반적인 css 꾸미기에서 width와 height의 값?

미해결

비전공자를 위한 진짜 입문 올인원 개발 부트캠프

강의 잘 듣고 있습니다. 질문이 있는데요, 일반적인 css 꾸미기 에서 width와 height의 값 은 개발자가 아닌 웹디자이너가 항상 알려주기도 하나요 ? 즉 만약 vs code에서 파일이 index.html이 있고 index.css가 있다고 한다면, index.html에서 작성한 내용에 index.css에서 꾸며줄 시에 width 값과 height 값이 몇 픽셀인지, 혹은 몇 퍼센트인지 정할 때 잘 모르겠다면 어떻게 해야 하나요? 개발자가 width 값과 height 값을 잘 모른다면 감으로 크기를 늘렸다가 줄였다가 반복 하면서 적당한 width값과 height값을 찾아나가는 건가요? 피그마에서는 보통 디자인이 다 된 결과 값을 보고 vs code에 코딩한다면 상세 정보를 보고 width크기,height크기,폰트 크기, 폰트 weight 등등 다양하게 그대로 css에 적어주기만 하면 되는데요, 그랩 선생님 강의에서는 피그마로 볼 수 있게 추가 안내가 없어서, 스스로 강의 들은 이후 강의 없이 복습 할 시에(그랩마켓 웹화면 구현하기 1~3) 혹시나 각각 css로 꾸밀 때 width, height은 외우거나 혹은 보고 css에 적용하는 방식의 공부법 밖에 없는걸까요? 아니면 실무에서는 웹디자이너가 이미지등등의 경우에 width,height,기타 등등을 알려주기 에 그대로 css에 코딩해주면 되는 것인지요? 그랩님, 답변 부탁드립니다.

  • HTML/CSS
  • javascript
  • react
  • node.js
  • react-native
  • 머신러닝
  • express
  • tensorflow
isbcom1004 댓글 2 좋아요 0 조회수 121

인기 태그

인프런 TOP Writers

주간 인기글