[React] State, props, event
🙋♀️ State
ステータスとは?[ダイナミック](Dynamic)の値を変更します.持続的に変化する特定の状態.状態によって、違う動作をします.
では、reactのstateにどんな意味があるか見てみましょう.
State:画面に表示する構成部品のUI情報(ステータス)
簡単に言えばstateは基本的にデータ格納の場所です.
イベントとステータスの変更👉 useState
状態変化管理のためにReactのusStateを使用することができます.React.useState() = [우리가 담으려는 data값(currentState), 값을 바꿀 수 있는 함수]
ex) const [counter, setCounter] = React.useState(0);
const onClick = () => {
//setCounter(counter + 1); //직접적으로 원하는 값 설정하는 방법
setCounter((current) => current + 1); // 위의 방법보다 좀 더 안전 (현재값이라는 걸 보장하고 있으므로) (current value에 직접 접근해서 값 설정하는 방법)
};
<button onClick = {onClick}>Click me!</button>
button要素をクリックするたびにonClick関数(イベント発生)が呼び出され、setCounterという関数を使用するたびにステータス値の初期値0からステータス値の1にステータス値が更新されます.
👉 すなわち、setCounterという名前の関数により、UIは毎日自動的に更新される.
ちなみに、componentは自分の状態が変化したときに再バインドします.
🙋♀️ Props
properties(プロパティ):親コンポーネントから渡されるデータを含むオブジェクト、変更しない値
アイテムで転送できるデータの種類は様々です.フリアン、関数などでもいい!
」親コンポーネントにpropsを入れるとstring形式が「」になり、変数や関数などが{}に入れて送信されます!
propsの利点は、素子を再使用できることです.
Event & Props
propsによるイベントハンドラの転送
ex) // 자식 Component
const Btn = (props) => {
console.log(props) // {text: 'Save Changes'} {text: 'Continue'}
return
<button>
{props.text}
</button>
}
// 부모 Component
const App = () =>{
return <>
<Btn text="Save Changes" />
<Btn text="Continue" />
</>
非構造化配分によってアイテムをより容易に得ることができる.
ex) {text, onClick} = props
const Btn({text, onClick}) => {
console.log(props) // {text: 'Save Changes'} {text: 'Continue'}
return
<button onClick = {onClick}>
{text}
</button>
}
const App = () => {
return <>
<Btn text="Save Changes" onClick ={changeValue} />
<Btn text="Continue" />
</> }
注意すべき点!
onClick eventlistenerは道具じゃない!html要素にonClickを入れてこそeventlistenerになることに注意してください.必ずprop内に置いて、html要素内にも置いてください!
Reference
この問題について([React] State, props, event), 我々は、より多くの情報をここで見つけました
https://velog.io/@hoje15v/React-State-props-event
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
const [counter, setCounter] = React.useState(0);
const onClick = () => {
//setCounter(counter + 1); //직접적으로 원하는 값 설정하는 방법
setCounter((current) => current + 1); // 위의 방법보다 좀 더 안전 (현재값이라는 걸 보장하고 있으므로) (current value에 직접 접근해서 값 설정하는 방법)
};
<button onClick = {onClick}>Click me!</button>
properties(プロパティ):親コンポーネントから渡されるデータを含むオブジェクト、変更しない値
アイテムで転送できるデータの種類は様々です.フリアン、関数などでもいい!
」親コンポーネントにpropsを入れるとstring形式が「」になり、変数や関数などが{}に入れて送信されます!
propsの利点は、素子を再使用できることです.
Event & Props
propsによるイベントハンドラの転送
ex)
// 자식 Component
const Btn = (props) => {
console.log(props) // {text: 'Save Changes'} {text: 'Continue'}
return
<button>
{props.text}
</button>
}
// 부모 Component
const App = () =>{
return <>
<Btn text="Save Changes" />
<Btn text="Continue" />
</>
非構造化配分によってアイテムをより容易に得ることができる.ex)
{text, onClick} = props
const Btn({text, onClick}) => {
console.log(props) // {text: 'Save Changes'} {text: 'Continue'}
return
<button onClick = {onClick}>
{text}
</button>
}
const App = () => {
return <>
<Btn text="Save Changes" onClick ={changeValue} />
<Btn text="Continue" />
</> }
注意すべき点!onClick eventlistenerは道具じゃない!html要素にonClickを入れてこそeventlistenerになることに注意してください.必ずprop内に置いて、html要素内にも置いてください!
Reference
この問題について([React] State, props, event), 我々は、より多くの情報をここで見つけました https://velog.io/@hoje15v/React-State-props-eventテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol