props와 state의 이미지를 잡아주세요. [첫 번째 React]
                                            
                                                
                                                
                                                
                                                
                                                
                                                 17678 단어  React
                    
그래서 이번에 우리는 이 두 캐릭터와 사용 방법을 조사하고 자신의 스타일을 정리해 보았습니다!!
props와state는 무엇입니까?두루뭉술하게 설명하다 
props: 부모 구성 요소에서 하위 구성 요소로 값을 전달하는 메커니즘
state: 모든 구성 요소의 구성 요소 상태를 관리하는 메커니즘
 
 
props 
상위 어셈블리에서 하위 어셈블리로 값을 전달하는 메커니즘
구성 요소의 부자 관계는?
 
상위: 어셈블리 사용자
서브어셈블리: 어셈블리의 한 면을 사용합니다.
구성 요소는  포위를 통해 호출할 수 있습니다
 
 
components/Title.서브어셈블리export default class Title extends React.Component {
  render() {
    return (
      <View>
        <Text>子コンポーネント</Text>
      </View>
    );
  }
}
App.상위 어셈블리import Title from './components/Title';
export default class App extends React.Component {
  render() {
    return (
      <View>
     <Text>親コンポーネント</Text>
     {/* Titleコンポーネント(子コンポーネント)の呼び出し */}
        <Title/>
      </View>
    );
  }
}
부모 구성 요소가 하위 구성 요소를 호출할 때props를 사용하여 하위 구성 요소에 값을 전달할 수 있습니다
props 사용 방법
 
상위 어셈블리에서 하위 어셈블리로 값을 전달하는 메커니즘
구성 요소의 부자 관계는?
상위: 어셈블리 사용자
서브어셈블리: 어셈블리의 한 면을 사용합니다.
구성 요소는 포위를 통해 호출할 수 있습니다
 
 components/Title.서브어셈블리
export default class Title extends React.Component {
  render() {
    return (
      <View>
        <Text>子コンポーネント</Text>
      </View>
    );
  }
}
import Title from './components/Title';
export default class App extends React.Component {
  render() {
    return (
      <View>
     <Text>親コンポーネント</Text>
     {/* Titleコンポーネント(子コンポーネント)の呼び出し */}
        <Title/>
      </View>
    );
  }
}
props 사용 방법
 
 App.상위 어셈블리
import Title from './components/Title';
export default class App extends React.Component {
  render() {
    return (
      <View>
        {/* 子に渡す値を設定 */}
        <Title title="今日のできごと"/>
      </View>
    );
  }
}
export default class Title extends React.Component {
  render() {
    return (
      <View>
     {/* 親から渡渡された値を取り出す */}
        <Text>{this.props.title}</Text>
      </View>
    );
  }
}
 
 props 전달 가능 값
문자열, 스타일, 이벤트 등
props 사용의 장점
props를 사용하면 여러 가지 상황에서 하나의 구성 요소를 사용할 수 있습니다
→ 어셈블리의 재사용성 향상
 
 App.상위 어셈블리
import Title from './components/Title';
export default class App extends React.Component {
  render() {
    return (
      <View>
        <Title titleStyle={{backgroundColor: "pink"}} title="リンゴ🍎"/>
        <Title titleStyle={{backgroundColor: "yellow"}} title="バナナ🍌"/>
        <Title titleStyle={{backgroundColor: "orange"}} title="オレンジ🍊"/>
      </View>
    );
  }
}
export default class Title extends React.Component {
  render() {
    return (
      <View>
     <Text style={this.props.titleStyle}>{this.props.title}</Text>
      </View>
    );
  }
}
props 고려사항
state 
각 구성 요소의 구성 요소 상태를 관리하는 메커니즘
구성 요소에서 교환된 정보를 상태로 관리
그리고 상태의 변화에 따라state의 값을 바꿀 수 있습니다
예시:state 관리를 통해 상향 계수
 
 
state 사용 방법
 
state의 초기 값 설정
↓
this.setState () 에서 state 변경 처리 쓰기
★state 값을 업데이트할 때 필요합니다setState() 경유 진행
↓
state를 업데이트하면 필요한 구성 요소가 자동으로 다시 불러옵니다.
state를 사용하여 위쪽 계수 단추 만들기
 
App.jsimport React, { Component } from 'react';
import {
  View,
  Text,
  // ボタンコンポーネント
  TouchableOpacity,
  StyleSheet,
} from 'react-native';
export default class App extends React.Component {
  // stateの初期値設定
  state = { count: 0 }
  // stateの状態変更処理 必ずsetState()で行う!
  countUp = () => {
    this.setState({
      count: this.state.count + 1 
    });
  } 
  render() {
    return (
      <View style={styles.container}>
        {/* カウントアップボタン */}
        <TouchableOpacity 
          style={styles.button}
          onPress={this.countUp}>
          <Text>ボタン</Text>
        </TouchableOpacity>
        {/* stateのcountを表示 */}
        <Text>
          Count : {this.state.count}
        </Text>
      </View>
    );
  }
}
const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
  },
  button: {
    backgroundColor: 'pink',
    color: 'white',
    marginBottom: 10,
    padding: 10,
    borderRadius: 15,
  }
});
 
 
버튼을 누르면 스테이트가 업데이트된 걸 알 수 있어요.
총결산 
props와state에 대한 이해를 깊이 있게 했다.
props: 부모 구성 요소에서 하위 구성 요소로 값을 전달하는 메커니즘
state: 모든 구성 요소의 구성 요소 상태를 관리하는 메커니즘
다른 사람의 이해를 도울 수 있다면 다행이다!
참고 자료 
import React, { Component } from 'react';
import {
  View,
  Text,
  // ボタンコンポーネント
  TouchableOpacity,
  StyleSheet,
} from 'react-native';
export default class App extends React.Component {
  // stateの初期値設定
  state = { count: 0 }
  // stateの状態変更処理 必ずsetState()で行う!
  countUp = () => {
    this.setState({
      count: this.state.count + 1 
    });
  } 
  render() {
    return (
      <View style={styles.container}>
        {/* カウントアップボタン */}
        <TouchableOpacity 
          style={styles.button}
          onPress={this.countUp}>
          <Text>ボタン</Text>
        </TouchableOpacity>
        {/* stateのcountを表示 */}
        <Text>
          Count : {this.state.count}
        </Text>
      </View>
    );
  }
}
const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
  },
  button: {
    backgroundColor: 'pink',
    color: 'white',
    marginBottom: 10,
    padding: 10,
    borderRadius: 15,
  }
});
props와state에 대한 이해를 깊이 있게 했다.
props: 부모 구성 요소에서 하위 구성 요소로 값을 전달하는 메커니즘
state: 모든 구성 요소의 구성 요소 상태를 관리하는 메커니즘
다른 사람의 이해를 도울 수 있다면 다행이다!
참고 자료
Reference
이 문제에 관하여(props와 state의 이미지를 잡아주세요. [첫 번째 React]), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/rio_threehouse/items/7632f5a593cf218b9504텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)