React-Redux 개념 잡기 #1
·
Programming/React
소개 Redux는 상태(state) 관리 라이브러리이다. Redux는 컴포넌트들의 상태 관련 로직들을 다른 파일들로 분리시켜서 효율적으로 상태를 관리할 수 있다. 특히, 컴포넌트끼리 상태를 공유해야 할 때, 기존의 여러 컴포넌트를 거쳐 전달해야 하는 방식과는 달리 Store를 통해 쉽게 상태 값을 전달할 수 있다. Redux는 React 외에도 jQuery 혹은 Angular를 사용하는 애플리케이션에서도 사용할 수 있지만, 이 글에서는 React 기반으로 서술할 것이다. Redux는 글로벌 상태 관리에 효과적이다. 굳이 '글로벌 상태 관리'라는 말을 하는 이유는 굳이 Redux를 사용할 필요는 없기 때문이다. 간단한 애플리케이션이라면, Redux를 사용하지 않더라도 상태를 관리하는데 큰 어려움 겪지 않을..
React 개념 잡기 #4 (JSX와 규칙)
·
Programming/React
JSX 소개 JSX는 Javascript를 확장한 문법입니다 UI가 어떻게 생겨야 하는지 설명하는 역할을 합니다 JSX 규칙 1. 태그가 비어있다면 />을 이용해 태그를 바로 닫아주어야 합니다. 2. 두 개 이상의 태그는 무조건 하나의 태그로 감싸져 있어야 합니다. 3. 태그를 작성 할 때 이름 없이 작성하면 Fragment가 만들어 집니다. Hello, React!! 안녕하세요 Hello, React!! 안녕하세요 4. Javascript 표현식을 사용할 때는 중괄호{ }를 이용합니다. const name = 'Josh Perez'; const element = Hello, {name}; 5. class는 className으로 표기해야 합니다. 6. 주석은 {/* */} 형태로 작성해야 합니다.
React 개념 잡기 #3 (props와 state에 대해서)
·
Programming/React
props React의 props는 HTML의 attribute와 유사합니다. 예를 들어, "brand" attribute를 "Car" element에 추가해봅시다. const myelement = ; 그럼 컴포넌트는 argument를 props object 처럼 받습니다. 아래 코드는 컴포넌트에서 "brand" attribute를 사용하는 모습입니다. 부모 컴포넌트로 부터 전달 받은 props는 하위 컴포넌트에서 this.props 라는 구문으로 사용가능합니다. class Car extends React.Component { render() { return I am a {this.props.brand}!; } } 컴포넌트가 일반적인 자바스크립트의 함수라면, props는 함수의 입력값(input)이 됩니..
React 개념 잡기 #2 (Component에 대해서)
·
Programming/React
컴포넌트(Component) 컴포넌트는 UI를 구성하는 독립적이고 개별적인 아주 작은 개체(entity)입니다. 이러한 컴포넌트들은 각각의 코드와 구조, API가 있습니다. 컴포넌트들을 모아서 UI(User Interface)를 구현하고 UI들은 사용자에게 View라는 형태로 제공됩니다. 컴포넌트의 장점은 코드를 재사용 가능하다는 것입니다. 컴포넌트의 종류는 함수형 컴포넌트와 클래스형 컴포넌트로 나뉘어 집니다. 함수형 컴포넌트 function App(props) { return Hello, {props.name}; } 클래스형 컴포넌트 class App extends Component { render() { return Hello {this.props.name}; } } 컴포넌트의 이름은 항상 대문자로 ..
React 개념 잡기 #1
·
Programming/React
리액트가 필요한 이유 Javascript를 이용하여 DOM을 변경하게한 경우에 만약 사용자에 의한 인터렉션이 많은 웹 페이지라면, 처리해야할 이벤트도 많아지고, 관리해야 할 상태값도 다양해지고, DOM도 다양해 질 것이기 때문에 DOM 업데이트와 이벤트 핸들러 간의 관계가 매우 복잡해질 것이다. 그래서 Ember, Backbone, AngularJS 등의 프레임워크가 만들어졌다. 이러한 프레임워크는 자바스크립트의 특정 값이 바뀌면, 특정 DOM의 속성이 바뀌도록 연결을 해준다. 이로 인해, 업데이트 하는 작업을 간소화할 수 있었다. 하지만 React는 위의 프레임워크들과는 달리 어떠한 상태가 바뀌었을 때, 그 상태에 따라 DOM을 어떻게 업데이트 할 지 규칙을 정하는 것이 아니라 아예 화면에 보여지는 V..