강의 내용 진행중 update 할때만 아래와 같은 에러가 나는데, 혹시 수정할 부분이 있을까요? insert/delete는 이상없이 진행 됩니다. 코드는 tailwind 일부만 제외하고는 전체 동일합니다. nextjs : 14.2.5 @supabase/supabase-js: "^2.45.0" ''' localhost/:1 Access to fetch at ' https://********.supabase.co/rest/v1/note?id=eq.8 ' from origin ' http://localhost:3000 ' has been blocked by CORS policy: Method PATCH is not allowed by Access-Control-Allow-Methods in preflight response. ''' const onEdit = async () => { if(!title || !content){ alert("제목과 내용을 입력하세요"); return; } const { data, error} = await supabase .from('note') .update({ title, content }) .eq('id',note.id); if(error){ alert(error.message); return; } setIsEditing(false); fetchNotes(); }
tailwind를 실제로 product에 적용해본 경험이 없어서 질문드립니다. 공통된 스타일은 global.css 로그인 페이지 스타일은 login.css 회원가입 페이지를 스타일을 signup.css로 @layout components를 나눠서 작성했을때 코드 스플릿팅이 되나요? 제대로 테스트를 못해봤지만 login.css 작성한 @layout components 클래스를 signup에서 쓰려면 써지는것 같더라구요 안썻을때 빌드시 코드 스플릿이 되는지 궁금합니다. jit 모드 라는게 있던데 프로젝트가 엄청 커졌을때 해당 기능으로 페이지 별로 어느정도 최적화가 되는지 궁금합니다.
failed to retrieve generated types: {"message":"Your account does not have the necessary privileges to access this endpoint. For more details, refer to our documentation https://supabase.com/docs/guides/platform/access-control "} generate-types씨 발생하는 에러 해결방법이 궁금합니다.
안녕하세요. 이 인강을 듣기 전에는 db에 데이터를 GET 하고 POST하기 위해서는 Rest API를 통해서 했었습니다. 하지만 이 강의에서는 supabase를 통해서 create,select 등을 이용해서 data를 다루던데 supabase를 통해서는 rest api를 통해서 data를 만들고, 가지고올수도 있나요? 만약 둘다 된다면 어떤 방식을 통해서 주로 data를 다루는게 좋을까요? 현업에서는 어떤 방식을 더 추구하나요? 현재 대학생이라 개인플젝을 할때 db가 필요해서 강의를 오늘부터 듣게되었는데 db를 어떻게 다뤄야할지 감이 안잡히네요. 아직 개념이 좀 잡히지 않아서 헷갈립니다. 추가적으로 저는 팀이나 , 특히 개인프로젝트를 하면서 사용자 정보(id,pw)나 여러 데이터들을 저장하고 싶어서 mongodb를 혼자서 공부하다가 어려워서 여러가지를 찾던 중 supabase(serverless)를 알게되어서 강의를 듣고있습니다. 하지만 그냥 mongodb를 공부해서 db를 다루는게 나은지 아니면 supabase를 공부해서 db를 저장하는게 나은지 잘 모르겠습니다. 긴 글 읽어주셔서 감사합니다..!
혹시 Next.js에서 Link태그와 useRouter를 제공하고 있는데 서로 차이점이 있을까요?? 이미지나 버튼이 있으면 거기에 onClick 달고 라우터 쓰고 있긴한데 이미지나 버튼에 링크를 감싸버리면 뭔가 이상할 것 같아서 어떤식으로 쓰면 좋을까요 <Link href="/" ><Image ... /></Link> <Image ... onClick={()=>router.push("/")} />
Next.js를 사용하는 경우 이미지 최적화를 위해 next/image 에서 제공하는 Image 컴포넌트를 사용합니다! 이를 활용해서, 스토리북 컴포넌트를 만들 경우, React에서 이를 활용할 수 있을지 궁금합니다. 현재, React-Native-Cli에서 프로젝트를 진행하고 있습니다. React-Native-Cli(View, Text, Pressable)와, React, Next에서 모두 활용 가능한, 공용 스토리북 컴포넌트를 현실적으로 만들 수 있는지, 실무에서는 각각 따로 분리해서 개발을 진행하는지 여부가 궁금합니다! 타입스크립트로 만든 스토리북 패키지를, 자바스크립트를 활용한 (타입스크립트를 사용하지 않는) 프로젝트에서 활용가능한지도 궁금합니다! 프로젝트를 진행하면, 스토리북과 함께 한개의 레포지토리로 관리하는 것이 좋은지, 아니면, 따로 분리해서 두개의 레포지토리로 관리하는 것이 좋은지 궁금합니다! 개발 시작시, 먼저 스토리북으로 컴포넌트를 제작 후, 개발을 진행하는 것이 좋은지, 아니면, 개발을 진행해가며, 그때 그떄 공용 컴포넌트로 쓰일 만한 것들을 스토리북으로 만들어나가는 것이 좋은지 강사님의 경험상 괜찮은 방법을 알려주시면 감사하겠습니다!!
import type { Meta, StoryObj } from "@storybook/react"; import { fn } from "@storybook/test"; import TagList from "../components/TagList"; // 버튼 컴포넌트의 메타 정보를 나타냄 const meta = { // 경로 title: "List/TagList", component: TagList, parameters: { layout: "centered", }, tags: ["autodocs"], argTypes: { tagList: { control: "array", description: "태그 리스트", docs: ["tag1", "tag2", "tag3"], }, onTagClick: { action: "clicked", description: "버튼 클릭 이벤트", }, }, args: { onTagClick: fn(), }, } satisfies Meta<typeof TagList>; export default meta; type Story = StoryObj<typeof meta>; export const Default: Story = { args: { tagList: ["tag1", "tag2", "tag3"], }, }; 위와 같이 코드를 작성했을 떄, tagList의 control 부분에서 타입 에러가 발생합니다. TS2322: Type "array" is not assignable to type Control | undefined 어쨰서 undefined가 들어갈 수 있는지 알고 싶습니다.
안녕하세요 로펀입니다. 강의를 수강하시면서 공지사항과 질문을 편하게 관리하기 위해 슬랙 채널을 개설했습니다 🙂 강의와 관련된 질문이 있으실 경우 슬랙의 #supabase-nextjs-클론-강의 채널에서 질문 부탁드립니다. 💡 ”로펀의 인프런 상담소” 슬랙 채널 가입하기 제 강의를 수강하시는 모든 분들은 슬랙 채널에 들어오실 수 있습니다. 슬랙에 들어오시면 더 빠르게 질문에 답변을 받아보실 수 있어요! 😉
기초부터 배우는 Next YTMusic 클론 코딩 (with next.js 14, UI 마스터)
1.3 NextJS 설치 편에서 다크모드 설정하는 부분에서 문의드립니다. <ThemeProvider attribute="class" defaultTheme="system" enableSystem disableTransitionOnChange > {children} </ThemeProvider> 설정 후, 영상에서는 dark, light로 수정하면 반영되는것을 확인할 수 있는데 제 코드에서는 Warning: Extra attributes from the server: class,style 그리고 Warning: Prop className did not match. Server: "__className_aaf875 vsc-initialized" Client: "__className_aaf875" 라는 워닝이 발생하여 자동적으로 반영되지 않는 것을 확인했습니다. 해당 이슈를 수정할 수 있는 방법이 있을까요 ?