👉🏻react 프로젝트 만들기

  • cmd창 : create-react-app <파일명>
  • vscode 열고 npm run start


💡React의 4가지 개념

1. JSX

  • JSX는 React에서만 사용되는 구문으로, HTML 형태와 비슷하다.

💡HTML VS JSX

  • class 대신 className
  • {}를 통한 JavaScript 구문 사용

2. Components

  • Function Component - 함수 선언 후 그 함수의 반환 값으로 React Component 주기
  • Class Component - render함수를 호출하고 그 안에서 Component return

    👉🏻다른 컴포넌트에서 만들어 놓은 컴포넌트를 사용하고 싶을때는❓

💡Component 만들 때의 규칙

  • 이름은 대문자로 시작!
  • Component의 return 값은 큰 하나의 Component로 감싸져 있어야 한다.

3. props

  • 컴포넌트를 호출할 때, 상황에 따라 부모 컴포넌트에서 어떠한 값을 넘겨줘야 할 때 사용 
    💡 Function Component의 경우 함수의 인자로 props , Class Component의 경우 class 내부의 property로 받게 된다.

    👉🏻Destructuring 
    • 구조화되어 있는 형태(배열, 객체 등)을 하나의 변수로 뽑아내기
      const person = {
      	name : "juyeon",
      	age : 24
      }
      
      const name = person.name;
      const age = person.age;
      
      
      만약 더 많은 키 값을 가지고 있다면❓ : 변수를 많이 만들어야한다.
      💡그래서 사용하는 방법이 destructuring!
      
      
      const { name, age } = person;
      
      console.log(name, age);

      👉🏻위의 코드에 적용해보자!

4. state

  • Component 안에서 변하는 데이터 저장

👉🏻 Component 단위로 파일 분리하기

  • 하나의 파일에서 하나의 객체 내보내기
    불러오는 파일 : import 새로_받을_이름 from '내보낸_파일의_위치';
    내보내는 파일 : export default 내보낼_객체_이름;
  • 하나의 파일에서 여러 개의 객체 내보내기
    내보내는 파일 : export const 객체1; export const 객체2;
    불러오는 파일 import {객체1, 객체2 } from '내보낸_파일의_위치';

'정리 > Web' 카테고리의 다른 글

Vuex  (0) 2021.07.14
CSS  (2) 2021.03.19
HTML  (0) 2021.03.19
jQuery  (0) 2021.03.08
JavaScript  (2) 2021.03.05

Vuex

  • Vue.js 애플리케이션을 위한 상태 관리 패턴 + 라이브러리
  • 상태가 예측 가능한 방식으로만 변경될 수 있도록 하는 규칙 + 애플리케이션의 모든 구성 요소에 대한 중앙 집중식 저장소 역할

    ▶ 상태 관리란 ? 

    - 여러 컴포넌트 간의 데이터 전달과 이벤트 통신을 한 곳에서 관리하는 패턴을 의미

     

    ▶ 상태 관리의 필요성

    -  컴포넌트 기반 프레임워크에서는 작은 단위로 쪼개진 여러 개의 컴포넌트로 화면을 구성하는데, 규모가 커질수록

    1) 뷰의 컴포넌트 통신 방식인 props, event emit 이 거쳐야 할 컴포넌트

    2) Event Bus를 사용하여 컴포넌트 간 데이터 흐름을 파악하기 어려움

    이러한 문제점을 해결하기 위해 모든 데이터 통신을 한 곳에서 중앙 집중식으로 관리 = 상태 관리

     

    즉, 컴포넌트 간의 통신이나 데이터 전달을 좀 더 유기적으로 관리할 필요성이 생긴다.

     

    ▶ Store : 애플리케이션 상태를 보관하는 컨테이너

    특징

    - store의 상태가 변경되면 반응적이고 효율적으로 업데이트

    - store의 상태를 직접 변경할 수 없다.

vuex 데이터 흐름

Store

  • state
    • 컴포넌트 간에 공유할 data 속성
    • mutation을 통해서만 변경 가능
  • mutations
    • state를 변경할 수 있는 유일한 방법
    • commit를 통해서 호출가능
  • actions
    • 비동기 작업 가능
    • mutation를 호출하기 위한 commit 가능
    • dispatch를 통해 호출
    • axios를 통한 api호출과 그 결과를 리턴하거나 mutation으로 commit하는 용도로 사용
  • getter
    • state에 대해 연산을 하고 그 결과를 view에 바인딩
    • state의 변경 여부에 따라 view를 업데이트

 

'정리 > Web' 카테고리의 다른 글

React란?  (0) 2021.09.17
CSS  (2) 2021.03.19
HTML  (0) 2021.03.19
jQuery  (0) 2021.03.08
JavaScript  (2) 2021.03.05

+ Recent posts