inflearn logo
강의

Course

Instructor

[Renewal] TypeScript All-in-One: Part 2. Practical Analysis

Class component typing

react 함수 컴포넌트 타이핑은 있는데 클래스 컴포넌트 타이핑 예제 코드가 없네요.

283

rhkdtjd124829

138 asked

1

react 함수형 컴포넌트 타이핑

예제 코드는 제로초님 github에 가면 있어서 쉽게 복붙 후 강의를 따라가기 좋은데, class 컴포넌트 타이핑은 예제 코드가 없는것 같습니다!

제로초님 ts-all-in-one github레포에 있으면 좋을것 같아요!

typescript

Answer 1

1

rhkdtjd124829

필요한 분들을 위해 예제 코드를 올려 두겠습니다.

 

import React, { Component } from "react";

class WordRelay extends Component {
  state = {
    word: "제로초",
    value: "",
    result: "",
  };

  onSubmitForm = (e: React.FormEvent) => {
    e.preventDefault();
    const input = this.input;
    if (this.state.word[this.state.word.length - 1] === this.state.value[0]) {
      this.setState({
        result: "딩동댕",
        word: this.state.value,
        value: "",
      });
      if (input) {
        input.focus();
      }
    } else {
      this.setState({
        result: "땡",
        value: "",
      });
      if (input) {
        input.focus();
      }
    }
  };

  onChangeInput = (e: React.ChangeEvent<HTMLInputElement>) => {
    this.setState({ value: e.currentTarget.value });
  };

  input: HTMLInputElement | null = null; // this.input을 생성
  onRefInput = (c: HTMLInputElement) => {
    this.input = c;
  };

  render() {
    return (
      <>
        <div>{this.state.word}</div>
        <form onSubmit={this.onSubmitForm}>
          <input
            ref={this.onRefInput}
            value={this.state.value}
            onChange={this.onChangeInput}
          />
          <button>클릭!!!</button>
        </form>
        <div>{this.state.result}</div>
      </>
    );
  }
}

export default WordRelay;

1

zerocho

감사합니다!

타입 오버라이딩

0

77

2

React19에서 useRef 타입 정의의 변화

0

117

2

jQuery를 $로 한 번 더 감싼 형태

0

54

1

typescript interface를 jsdoc으로 주석달 때

0

226

2

declare module시 import 위치

0

195

2

declare global 로 선언된 타입을 확장하는게 아닌 좁히는것도 가능할가요?

0

145

2

typescript 강의를 보고 개발을 하다가 강의와 다른 내용인데 물어볼곳이 여기밖에 없어서 질문 드립니다.

0

234

1

강의에 필요한 사전준비와 예제 코드 첨부

1

308

1

local.ts 예제코드 첨부 합니다.

1

226

1

redux 예제코드 가져와서 강의 보면서 따라하는데

1

242

1

axios 1.6.0 버전으로 보고 있는데영

4

391

1

Module '"axios"' has no default export 에러 나시는분들

0

878

1

안녕하세요, 제로초님 타입스크립트 axios 분석 강의보고 궁금한점이 있어서 질문드립니다

1

386

1

안녕하세요. 제로초님 당신의 강의 매니아 입니다. typescript 모듈 관련 질문이 있어서요.

0

268

1

axios catch 에서 error 타입에 대해 as 없이 이렇게 사용하면 어떨까요?

0

405

1

global 선언 시 export {}

0

296

1

initialState가 제네릭 S인 이유가 잘 이해가 되지 않습니다.

0

308

1

declare module vs declare namespace

0

472

1

declare namespace vs namespace

0

493

2

"axios": "1.4.0" 버전 axios type 코드가 강의와 다릅니다!

0

555

1

Redux type 설정 과정에서 발생한 오류 질문 (ts[2345])

1

375

2

index.d.ts 에서 global declare 선언을 했을 때와 하지 않았을 때의 차이

0

402

1

미들웨어가 커링패턴으로 이루어진 이유

0

434

1

axios 파트 첫번째 강의 질문입니다

0

530

1