inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

[section09] Quiz Ant-design DatePicker library

해결된 질문

753

bearsk711

작성한 질문수 2

0

안녕하세요 section09 퀴즈에서 Ant-design Date picker 를 사용하는 과정에서 질문이 생겨 여쭤봅니다.

import { DatePicker} from 'antd';
import type { DatePickerProps } from 'antd';
import { useState } from 'react';

export default function AndDesignPage() {
  const [date, setDate] = useState('');
  const [month, setMonth] = useState('');

  const onChange: DatePickerProps['onChange'] = (date, dateString) => {
    console.log(date);
    setDate(dateString);
    setMonth(date?.$M + 1);👈👈👈 1️⃣
  };

  return (
    <>
      <h1>Q2. DatePicker</h1>
      <span>
        <DatePicker onChange={onChange} />👈👈👈 2️⃣
      </span>
      {month && (
        <>
          <p>선택날짜 : {date}</p>
          <p>{month}월을 선택하셨습니다.</p>
        </>
      )}

    </>
  );
}

전체 코드는 위와 같고 1️⃣,2️⃣번에 빨간 줄이 쳐졌습니다.

 

1️⃣번은 아래와 같은 메세지가 뜹니다.

console.log(date)를 했을 때 아래와 같이 콘솔이 나와서 $M을 활용했는데 작동도 잘 되고 콘솔메세지에도 따로 에러가 뜨지는 않습니다.

 

2️⃣번은 아래와 같은 문제입니다

에러메세지 전문은 다음과 같습니다.

(alias) const DatePicker: PickerComponentClass<PickerProps<Dayjs> & {
    status?: "" | "warning" | "error" | undefined;
    hashId?: string | undefined;
    popupClassName?: string | undefined;
    rootClassName?: string | undefined;
}, unknown> & {
    WeekPicker: import("./generatePicker/interface").PickerComponentClass<Omit<PickerProps<Dayjs> & {
        status?: "" | "warning" | "error" | undefined;
        hashId?: string | undefined;
        popupClassName?: string | undefined;
        rootClassName?: string | undefined;
    }, "picker">, unknown>;
    MonthPicker: import("./generatePicker/interface").PickerComponentClass<Omit<PickerProps<Dayjs> & {
        status?: "" | "warning" | "error" | undefined;
        hashId?: string | undefined;
        popupClassName?: string | undefined;
        rootClassName?: string | undefined;
    }, "picker">, unknown>;
    YearPicker: import("./generatePicker/interface").PickerComponentClass<Omit<PickerProps<Dayjs> & {
        status?: "" | "warning" | "error" | undefined;
        hashId?: string | undefined;
        popupClassName?: string | undefined;
        rootClassName?: string | undefined;
    }, "picker">, unknown>;
    RangePicker: import("./generatePicker/interface").PickerComponentClass<BaseRangePickerProps<Dayjs> & {
        dropdownClassName?: string | undefined;
        popupClassName?: string | undefined;
    }, unknown>;
    TimePicker: import("./generatePicker/interface").PickerComponentClass<Omit<Omit<import("rc-picker/lib/Picker").PickerTimeProps<Dayjs>, "locale" | "generateConfig" | "hideHeader" | "components" | "hourStep"> & {
        locale ...
import DatePicker
'DatePicker' cannot be used as a JSX component.
  Its instance type 'Component<PickerProps<Dayjs> & { status?: "" | "warning" | "error" | undefined; hashId?: string | undefined; popupClassName?: string | undefined; rootClassName?: string | undefined; }, unknown, any> & CommonPickerMethods' is not a valid JSX element.
    The types returned by 'render()' are incompatible between these types.
      Type 'React.ReactNode' is not assignable to type 'import("/Users/bible/Bible_Highting/codecamp-frontend-bible/class_quiz/node_modules/@types/react-transition-group/node_modules/@types/react/index").ReactNode'.
        Type '{}' is not assignable to type 'ReactNode'.ts(2786)

 

1️⃣,2️⃣번 모두 작동에는 이상이 없으나 빨간줄의 원인과 해결방법을 알고싶어 질문드립니다. 감사합니다!

react node.js seo graphql next.js

답변 1

0

Camp_멘토

안녕하세요 bearsk711님
우선 첫째로 함수의 이름이 동작명과 동일한것은 지양해주셔야합니다 onChange동작에 함수 onChange가 아닌 다른이름을 사용해보시길 바랍니다
또한 통상 실제 사용에서는 datePicker에서 반환되는 dateString을 가공하여 state에 넣습니다
예를 들면 -을 기준으로 split하면 되겠죠

fetchBoardsOfMine, fetchBoardsCountOfMine 에러 문의드립니다

0

41

1

댓글 기능 구현 중 질문드립니다.

0

67

1

쿠폰코드 발급

0

147

2

example 서버 플레이그라운드, API 접속 모두 안됩니다.

0

89

2

문의드립니다!! ㅠㅠ

0

107

2

graphql 백엔드 서버가 포폴용 빼곤 접속이 안됩니다.

0

80

2

_app.js 작성 이후로 에러가 발생하네요

0

96

2

학습자료

0

72

2

학습자료가 안열립니다.

0

51

2

플레이 그라운드 퀴즈 문제 질문이 있습니다.

0

61

0

기존강의 구매자, 업데이트 끝인가요?

0

111

3

업데이트 버전 수강

0

89

2

완벽한 프론트엔드

0

136

2

나만의 쇼핑몰 샘플 페이지 접속 확인부탁드립니다.

0

84

1

graphql 접속이 안됩니다.

0

101

2

const, let 사용 질문 드립니다.

0

72

2

싸이월드 만들기 1탄 피드백 부탁드립니다.

0

123

2

회원가입 과제 피드백 부탁드립니다.

0

81

2

styled.span / styled.input "CSS 자동완성"

0

47

1

쿠폰 발급 관련

0

167

2

서버 502 error

0

247

2

쿠폰 다시 부탁드려도 될가여?

0

140

2

a태그 패딩했을때 왜 크기가 줄어들지 않고 늘어나나요

0

185

2

2분 44초 질문

0

132

3