inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

캐스팅 관련 질문

미해결

김영한의 실전 자바 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. Parent poly = new Child(); Child child = (Child) poly; poly의 타입이 Child로 변하는 것은 아니다. 해당 참조값을 꺼내고 꺼낸 참조값이 Child타입이 되는것이다. 라고 되있는데 이부분이 잘 이해가 가질 않습니다. poly는 결국 변수명일 뿐이고 핵심은 참조값인데 poly라는 객체의 참조값의 타입이 변경 된다는게 결국 poly의 타입이 변경된다는거랑 같은 말 아닌가요? 결과적으로 그냥 이 부분이 그래서 무엇을 뜻하는건지 모르겠습니다. 그냥 poly의 타입이 Child로 바꿔서 쓴다고 이해해도 상관없지 않나요?

  • java
  • 객체지향
명석 댓글 1 좋아요 0 조회수 231

예외를 처리하는 부분에있어서 질문있습니다!

미해결

스프링 DB 1편 - 데이터 접근 핵심 원리

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 예외를 던지거나 잡아서 처리한다는 내용에 대해 질문이 있는데요.. 어떻게 예외를 처리해야하는지 그 부분이 현재까지 본 강의로는 조금 추상적이라 이해가 부족한데 혹시 조금더 설명 해주실수 있으실까요? try catch 를 이용해서 예외 발생시 롤백을 하고 어떤 응답값을 리턴한다 같은 처리를 이야기 하는걸까요? 만약 그렇다면 @Transactional을 하는 경우는 롤백은 되지만 응답에 대한 처리는 어떻게 할 수 있을까요?

  • spring
  • mvc
  • spring-jdbc
댓글 1 좋아요 0 조회수 334

.terraform 디렉토리에 관해

해결됨

중급, 활용편 #1 DevOps : Infrastructure as Code with AWS and 테라폼

안녕하세요. 중급강의를 듣고 실습하던 중 궁금한 사항이 생겨 chatgpt나 구글을 찾아봤지만 답을 찾지 못해 질문드립니다. terraform의 경우 명령어의 실행범위가 현재 위치한 디렉토리 내로 한정되어 각 디렉토리별로 terraform init 명령어를 입력해주어야 하는 것 같은데 이때 .terraform 디렉토리가 init 명령어를 실행하는 디렉토리마다 생성이됩니다. 그런데 이 .terraform 디렉토리의 크기가 aws 를 기준으로는 약 470mb정도가되어 실제로 사용할 때는 프로젝트별로 하나의 .terraform 디렉토리를 공유해서 사용한다던가 하는 효율적인 방법이 있을거라고 생각하는데 도저히 찾지못해 질문드립니다.

  • aws
  • Terraform
  • devops
이우신 댓글 1 좋아요 1 조회수 335

reset.css 와 style.css 에 넣을 문장들 구분하기 질문드립니다.

미해결

모바일 웹 퍼블리싱 포트폴리오 with Figma

강의에서 h1, h2, h3 의 폰트사이즈는 reset.css 파일에 들어가고 body의 폰트사이즈는 style.css 파일에 들어가고 *의 box-sizing: border-box 는 reset.css 파일에 들어가는데 body의 margin 0은 style.css에 들어가는데 body의 폰트사이즈나 margin:0도 reset.css 파일에 넣어도 되나요? 개인별로 스스로 편한대로 넣어도 되는지 아니면 혹시 body에 주는 css들은 style.css에 넣는게 권장되는건지 궁금합니다.

  • HTML/CSS
  • jquery
  • 모바일-디자인
  • figma
  • 포트폴리오
d111 댓글 1 좋아요 1 조회수 334

m_valid와 m_ready가 OR 처리되어있는 이유가 궁금합니다.

해결됨

설계독학맛비's 실전 Verilog HDL Season 2 (AMBA AXI4 완전정복)

================= 현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ) 강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등) 이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요) 개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등.. 글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.) 서로 예의를 지키며 존중하는 문화를 만들어가요. 질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! ) 먼저 유사한 질문이 있었는지 검색해보세요. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. ================== 맛비님. 안녕하세요. 강의 잘 보고 있습니다. 하나 궁금한 점이 있어서 질문 드립니다. Valid / Ready I/F는 마스터와 슬레이브 간 데이터 전송에 있어 문제가 없는지 서로 검사하고 데이터를 전송하는 것으로 이해하고 있습니다. Q. 약 6분 48초에 나오는 3 stage Handshake 모듈 m_ready와 ~m_valid가 왜 OR로 묶여있는지 이해가 되지 않습니다. m_ready가 만약 0이라면 마스터가 데이터 받을 준비가 되어있지 않다는 것으로 이해가 되는데, 이 때 m_valid가 만약 0이라면 마스터가 데이터 받을 준비가 되어있지 않아도 데이터 전송이 될 것이라고 생각이 들어서요. 왜 OR 처리가 되어있나요?

  • verilog-hdl
  • fpga
  • 임베디드
  • amba
김상현 댓글 2 좋아요 1 조회수 350

시스템 반도체 개발 생태계에서의 고객, 산업

미해결

시스템 소프트웨어 개발의 모든 것 - 시스템 반도체와 전기 자동차 중심

안녕하세요! 강의로 정말 도움 많이 받고 있습니다. 삼성전자와 같이 펩리스, 파운더리 등을 모두 갖추고 있는 종합적인 반도체 기업에서는 강의에서 말씀하시는 고객(OEM?)은 어떤 기업이 되는 건가요? 삼성전자 내에서 모든게 이루어지는 시스템인가요? 답변 미리 감사드립니다.

  • 임베디드
민yy 댓글 1 좋아요 0 조회수 338

에셋 패널 사용하기

미해결

UX/UI 시작하기 : Adobe XD 입문(Inflearn Original)

안녕하세요. 에셋 패널 사용하기 강의를 들으면서 실습하고 있는데 에셋을 등록후 수정하려는데 우클릭 창이 뜨지 않습니다. 이유가 있을까요???

아기 같은 올빼미 댓글 1 좋아요 0 조회수 256

선생님! 4회기출 작업형1-3 between 질문드립니다~

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 4회기출 작업형 1-3번 문제에서 아래쪽 풀이3번을 보고 있는데, 질문있습니다! df['date_added'].between('2018-01-01','2018-01-31') 이부분에서 between안의 인자들은 모두 포함인가요 ? 시작일 : 2018-01-01 종료일 : 2018-01-31 시작일 종료일 모두 포함 인건지 궁금합니다~! loc,iloc헷갈리듯이 이 함수는 어떤지 알려주세요ㅠ

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
단순한 캥거루 댓글 1 좋아요 0 조회수 195

섹션1 강의자료 확인 요청드립니다.

해결됨

실무자가 알려주는 CANoe (For CAN 통신)

섹션 0 하고 섹션 1하고 강의자료가 같습니다. 섹선 1의 강의자료가 잘못 올라온 것 같은데 확인 부탁드립니다!

  • CAN
  • CANoe
윤성오 댓글 3 좋아요 0 조회수 283

Parallel 컴포짓의 태스크 실행 질문..

미해결

이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해

Main 인 Attack task 는 Inprogress 반환이라도 딱 한번만 호출되는데요. 같이 실행되는 TurnToTarget task는 Succeeded를 반환해도 매 프레임 여러 번 호출되는 것 같습니다. 여기서 어떤 규칙이 있는 건가요?? Parallel 컴포짓 이 main task가 inprogress 일 동안에는 매 프레임 sub task 의 ExecuteTask()를 호출 하는 방식인가요??

  • unreal-engine
  • ue-blueprint
  • 언리얼-c++
themoon007 댓글 1 좋아요 0 조회수 188

코드 복사관련 질문

해결됨

설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)

코드 복사관련 질문드립니다. 여기서 :vs로 윈도우를 하나 더 만들고 ctrl+w w로 커서를 우측으로 바꾼후 :E로 선택페이지로간뒤 해당파일로와서 shift v로 드래그까진했는데 여기서 복사는 어떻게 하나요? 현상황에서 마우스로 드래그하면 왼쪽코드도 같이 잡혀서 마우스론 안되고 드래그만하면 보통 클립보드에 다 저장되는건줄알았는데 안되네요 ================= 현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ) 강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등) 이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요) 개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등.. 글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.) 서로 예의를 지키며 존중하는 문화를 만들어가요. 질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! ) 먼저 유사한 질문이 있었는지 검색해보세요. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. ==================

  • verilog-hdl
  • fpga
  • 임베디드
hunas2127 댓글 1 좋아요 1 조회수 238

serializer에서 query문 작성

미해결

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)

serializer는 직렬화를 담당하는 클래스인데 이 안에서 orm으로 query 메서드를 정의하는 게 괜찮은 방법인가요? layered architecture라고 한다면 repository 클래스를 만들텐데, django에서는 이런 방식이 권장되는 방법인지 궁금합니다. repository class에 query 메서드를 작성하고 queryset에 할당해주는 방법은 괜찮은가요? 감사합니다.

  • react
  • python
  • django
  • web-api
  • htmx
nick_kcin 댓글 1 좋아요 0 조회수 214

cross join, full join강의 / leetcode 1280번 문제 질문드립니다

해결됨

SQL 코딩테스트를 위한 첫 걸음

select a.student_id, a.student_name, a.subject_name, count(e.subject_name) attended_exams from ( select student_id, student_name, subject_name from Students, Subjects # cross join ) a left outer join ( select student_id, subject_name from Examinations ) e on a.student_id=e.student_id and a.subject_name=e.subject_name group by a.student_id, a.student_name, a.subject_name order by a.student_id, a.subject_name; 해당 코드에 select 문에 있는 count(e.subject_name) attended_exams 를 실행할 때, count(a.subject_name) attended_exams 와 같이 cross join을 실행한 subject_name을 기준으로 실행하는 경우에는 0값이 안나오는 결과를 확인했는데 둘의 차이가 궁금합니다.

  • sql
  • mysql
  • 코딩-테스트
이승렬 댓글 1 좋아요 1 조회수 358

캐글 t1-35 (파이썬) 2번 문제 풀이 부탁드립니다!

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

안녕하세요~ 캐글 t1-35 (파이썬) 2번 문제 풀이 부탁드립니다! 항상 좋은 강의 감사합니다 😊 https://www.kaggle.com/code/agileteam/t1-35-fb-py

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
류다은 댓글 2 좋아요 0 조회수 241

검증용 데이터 분리 후 의사결정나무 모델 적용 시 오류

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

# 의사결정나무 from sklearn.tree import DecisionTreeClassifier dt = DecisionTreeClassifier() dt.fit(X_tr[cols], y_tr) pred = dt.predict_proba(X_val[cols]) pred[:10] array([[1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.], [1.]]) 검증용 데이터 분리시 출력 결과가 상이하네요 어디를 수정해야 할까요??

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
rani7533 댓글 1 좋아요 0 조회수 217

교안 38p char을 초기화할 때 NULL 초기화가 되지 않네요.

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

아래의 코드를 type.cpp파일에 작성하고, ➜ c++ git:(master) ✗ g++ -std=c++14 -Wall type.cpp -o type.out 컴파일을 했을때, 해당 NULL로 초기화가 안되는데 뭐가 잘못된 걸까요? ➜ c++ git:(master) ✗ g++ -std=c++14 -Wall type.cpp -o type.out type.cpp:35:14: warning: implicit conversion of NULL constant to 'char' [-Wnull-conversion] char c = NULL; // c에 NULL 매크로 할당, 이는 '\0'과 동일 ~ ^~~~ '\0' 1 warning generated. #include <bits/stdc++.h> using namespace std; int main(){ char a = '\0'; char b = 0; char c = NULL; string d = ""; cout << "hello"; if(a == b) cout << 1; // a와 b는 동일하므로 1 출력 if(b == c) cout << 1; // b와 c도 동일하므로 1 출력 // string(1, a)는 a를 하나의 문자로 가지는 문자열 생성, 이는 "\0"과 같음 if(string(1, a) == d) cout << 1; }

  • c++
  • 코딩-테스트
하얀종이개발자 댓글 1 좋아요 0 조회수 173

강의 깃헙 주소

미해결

JavaScript 알고리즘 베스트 10

강의 깃헙 주소는 어디 있나요?

  • javascript
  • 코딩-테스트
  • 알고리즘
우디 댓글 2 좋아요 0 조회수 361

@RelaxedMockK로 모킹하고 save 함수를 왜 또 모킹하는지 모르겠습니다.

미해결

코틀린 문법부터 실무까지 (실전 자바->코틀린 변환)

안녕하세요 강사님. 강의 정말 잘 듣고 실무에 적용해보려고 합니다. 강의 내용중 createPrinceTest_success 라고 하는 테스트 코드 예시에서 @Relaxed 로 모킹을 진행하고 오류가 발생해서 princeRepository.save ()를 모킹하신다고 하셨는데, 그 이유가 어떤 이유인지 궁금합니다. CreatePrince.Request 객체를 만들고 princeMakerService.createPrince(request)를 호출하여 내부의 princeRepository.save ()를 통해 저장되는 것을 테스트 하는데 외부에서 princeRepository.save ()를 다시 모킹을 진행하고 랜덤 값으로 Prince 객체를 리턴 받는것이 조금 이해가 되지 않아서 질문드립니다. 질 좋은 강의 너무 감사드립니다. 답변 주시면 감사하겠습니다!

  • java
  • spring
  • kotlin
  • spring-boot
  • 객체지향
최진호 댓글 1 좋아요 1 조회수 405

완전 기초?질문

해결됨

설계독학맛비's 실전 Verilog HDL Season 1 (Clock부터 Internal Memory까지)

지금 현재 ch1파일에있는데 이전파일(Matbi_VerilogHDL_Season1)로 가거나 ch2파일로 가는 코드가 있을까요? +실수로 저창에서 우클릭하면 클립보드에 복사한코드가 다 붙여넣기되는데 이때 딜리트키 꾹누르는거 말고 한번에 삭제하는 방법도 있을까요? ================= 현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ) 강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등) 이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요) 개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등.. 글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.) 서로 예의를 지키며 존중하는 문화를 만들어가요. 질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! ) 먼저 유사한 질문이 있었는지 검색해보세요. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. ==================

  • verilog-hdl
  • fpga
  • 임베디드
hunas2127 댓글 1 좋아요 1 조회수 234

full reload 될때는 서버 데이터를 호출하는데 그 이후로 새로고침할대는 호출하지 않아서 답답합니다

미해결

[리뉴얼] React로 NodeBird SNS 만들기

안녕하세요 제로초님 full reload 될때는 서버 데이터를 호출하는데 그 이후로 새로고침할대는 호출하지 않아서 답답합니다. 구글링하고 제로초님 로직을 따라 만들어보다가 posts게시물이 내려오도록 수정을 했는데, 이상하게 처음엔 서버에 요청하고 데이터를 내려받아서 게시물이 보이는데, 그이후 새로고침하면 서버 호출까지도 안하는것 같습니다. 이젠 좀 나오나 싶었는데, full reload될때만 되서 여유되실 때 로직한번 봐주시면 감사하겠습니다 ㅠ / pages/index.js import { useDispatch, useSelector } from "react-redux"; import AppLayout from "../components/AppLayout"; import PostForm from "../components/PostForm"; import PostCard from "../components/PostCard"; import { useEffect } from "react"; import { loadPostsRequestAction } from "../reducers/post"; import { loadMyInfoRequestAction } from "../reducers/user"; import wrapper from "../store/configurStore"; import axios from "axios"; import { END } from "redux-saga"; // 프론트, 브라우저 같이 실행 const Home = () => { const { me } = useSelector((state) => state.user); const { mainPosts, hasMorePosts, loadPostsLoading, retweetError } = useSelector((state) => state.post); const dispatch = useDispatch(); useEffect(() => { if (retweetError) { alert(retweetError); } }, [retweetError]); useEffect(() => { const onScroll = () => { if (window.scrollY + document.documentElement.clientHeight > document.documentElement.scrollHeight - 300) { if (hasMorePosts && !loadPostsLoading) { const lastId = mainPosts[mainPosts.length - 1]?.id; dispatch(loadPostsRequestAction({ lastId, limit: 10 })); } } }; window.addEventListener("scroll", onScroll); return () => { window.removeEventListener("scroll", onScroll); }; }, [hasMorePosts, loadPostsLoading, mainPosts]); return ( <AppLayout> {me && <PostForm />} {/* 순서가 바뀌거나 삭제될 수 있는 리스트들에 key값으로 index를 쓰면 안됀다. */} {/* 반복문이 있고 바뀌지 않는 리스트일 경우에만 사용해도 된다. */} {mainPosts.map((post) => ( <PostCard key={post.id} post={post} /> ))} </AppLayout> ); }; export const getServerSideProps = wrapper.getServerSideProps((store) => async ({ req }) => { store.dispatch(loadPostsRequestAction()); store.dispatch(loadMyInfoRequestAction()); store.dispatch(END); await store.sagaTask.toPromise(); // 사가 작업 완료 대기 console.log("state", store.getState()); }); export function reportWebVitals(metric) { console.log(metric); } export default Home; /pages/_app.js import PropTypes from "prop-types"; import Head from "next/head"; import { Provider } from "react-redux"; import wrapper from "../store/configurStore"; const NodeBird = ({ Component, ...rest }) => { const { store, props } = wrapper.useWrappedStore(rest); const { pageProps } = props; return ( <Provider store={store}> <Head> <meta charSet='utf-8' /> <meta name='viewport' content='width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' /> <title>NodeBird</title> </Head> <Component {...pageProps} /> </Provider> ); }; NodeBird.propTypes = { Component: PropTypes.elementType.isRequired, pageProps: PropTypes.any.isRequired, }; export function reportWebVitals(metric) { // console.log("-----------------------------------"); // console.log(metric); } export default NodeBird; store/configureStore.js import { createWrapper } from "next-redux-wrapper"; import { configureStore } from "@reduxjs/toolkit"; import reducer from "../reducers"; import user from "../reducers/user"; import post from "../reducers/post"; import createSagaMiddleware from "redux-saga"; import rootSaga from "../sagas"; // redux-thunk를 참조해서 만든 미들웨어 const loggerMiddleware = ({ dispatch, getState }) => (next) => (action) => { return next(action); }; const sagaMiddleware = createSagaMiddleware(); function getServerState() { return typeof document !== "undefined" ? JSON.parse(document.querySelector("#__NEXT_DATA__").textContent)?.props.pageProps.initialState : undefined; } const serverState = getServerState(); const makeStore = () => { // configureStore: store 를 생성 const store = configureStore({ reducer: { user, post, }, middleware: (getDefaultMiddleware) => getDefaultMiddleware().concat([sagaMiddleware, loggerMiddleware]), preloadedState: serverState, // SSR }); store.sagaTask = sagaMiddleware.run(rootSaga); return store; }; const wrapper = createWrapper(makeStore, { debug: process.env.NODE_ENV === "development", }); export default wrapper; /reducers.js/post.js import { HYDRATE } from "next-redux-wrapper"; import { createSlice } from "@reduxjs/toolkit"; import shortId from "shortid"; import produce from "immer"; export const initialState = { mainPosts: [], imagePaths: [], hasMorePosts: true, loadPostsLoading: false, // 게시글들 불러오는 중 loadPostsDone: false, loadPostsError: null, addPostLoading: false, // 게시글 추가 시도중 addPostDone: false, addPostError: null, removePostLoading: false, // 게시글 제거 시도중 removePostDone: false, removePostError: null, addCommentLoading: false, // 댓글 추가 시도중 addCommentDone: false, addCommentError: null, likePostLoading: false, // 좋아요 시도중 likePostDone: false, likePostError: null, unLikePostLoading: false, // 좋아요 취소중 unLikePostDone: false, unLikePostError: null, uploadImagesLoading: false, // 이미지 업로드 시도중 uploadImagesDone: false, uploadImagesError: null, retweetLoading: false, // 리트윗 시도중 retweetDone: false, retweetError: null, }; const postSlice = createSlice({ name: "post", initialState, reducers: {loadPostsRequestAction: (state, action) => { console.log("-------------------요청-------------------"); state.loadPostsLoading = true; state.loadPostsDone = false; state.loadPostsError = null; }, loadPostsSuccessAction: (state, action) => { console.log("-------------------성공-------------------"); state.loadPostsLoading = false; state.loadPostsDone = true; state.mainPosts = [... state.hasMorePosts = action.payload.length === 10; }, loadPostsFailureAction: (state, action) => { console.log("-------------------실패-------------------"); state.loadPostsLoading = false; state.loadPostsError = action.payload; }, }, extraReducers: (builder) => builder .addCase(HYDRATE, (state, action) => { console.log("HYDRATE", action); return { ...state, ...action.payload.post, }; }) .addDefaultCase((state) => state), }); export const { loadPostsRequestAction, loadPostsSuccessAction, loadPostsFailureAction, } = postSlice.actions; export default postSlice.reducer;

  • react
  • redux
  • node.js
  • express
  • next.js
챠챠_ 댓글 2 좋아요 0 조회수 334

인기 태그

인프런 TOP Writers

주간 인기글