본문 바로가기
반응형

2017/06100

[ReactJS] State 끌어 올리기(Lifting State Up) State 끌어 올리기(Lifting State Up) 123456function BoilingVerdict(props) { if (props.celsius >= 100) { return The water would boil.; } return The water would not boil.; }Colored by Color Scriptercs 종종 여러 컴포넌트가 동일한 변경 데이터를 반영해야한다.이 때는 가장 가까운 상위 컴포넌트가 state값을 관리하는 것이 좋다. 이번 포스팅에서는 주어진 온도에서 물이 끓는지 여부를 계산하는 온도 계산기를 작성한다코딩은 위의 BoilingVerdict라는 컴포넌트 부터 시작한다.이 컴포넌트는 섭씨 온도를 받아서 물을 끓일만큼 충분한지 출력한다. 12345678910.. 2017. 6. 13.
[ReactJS] 입력폼(Forms) 입력폼(Forms) 1234567 Name: Colored by Color Scriptercs HTML의 폼 엘리먼트는 자연스럽게 내부상태를 유지하기 때문에, 리액트와 조금 다른 방식으로 동작한다.예를 들어, 일반 HTML 형식의 양식은 단일 이름을 허용한다.이와 같은 코드를 리액트에서 사용한다면 동일하게 동작은 한다.그러나 대부분의 경우 form 데이터를 처리하고 사용자가 form에 입력한 데이터에 액세스 할 수 있는 자바스크립트 기능을 가지는 것이 더 편리하다이를 위해 controlled component 를 사용한다. Controlled Component 123456789101112131415161718192021222324252627282930class NameForm extends React.C.. 2017. 6. 13.
[ReactJS] 리스트와 키(Lists and Keys) 리스트와 키(Lists and Keys) 123const numbers = [1, 2, 3, 4, 5];const doubled = numbers.map((number) => number * 2); console.log(doubled);Colored by Color Scriptercs 먼저, 자바스크립트를 리스트로 변환하는 것을 보자위의 코드를 사용하면 map() 함수를 사용하여 숫자 배열을 가져와서 두배로 늘릴수 있다.map()에 의해 반환 된 새로운 배열을 double 변수에 할당하고 그것을 기록한다.따라서 콘솔에는 [2,4,6,8,10]이 출력된다.리액트에서 엘리먼트를 리스트에 변환하는 것은 이것과 가의 동일하다 여러 컴포넌트 랜더링 12345const numbers = [1, 2, 3, 4, 5].. 2017. 6. 13.
[ReactJS] 조건부 랜더링(Conditional Rendering) 조건부 랜더링(Conditional Rendering) 1234567function UserGreeting(props) { return Welcome back!; } function GuestGreeting(props) { return Please sign up.;}Colored by Color Scriptercs 리액트에서는 필요한 동작을 캡슐화하는 컴포넌트를 만들 수 있다.그런 다음 애플리케이션의 state에 따라 일부만 랜더링 할 수 있다. 리액트의 조건부 랜더링은 자바스크립트에서와 동일하게 동작한다.if와 같은 자바스크립트의 조건부 연산자를 사용하여 현재 state를 나타내게하는 엘리먼트를 만들고리액트가 UI를 업데이트 하여 일치하도록 한다. 사용자의 로그인 여부를 출력하는 위의 두 컴포넌트를 만.. 2017. 6. 13.
반응형