[1週間]簡単なカウンターを作る
18378 ワード
に質問
👉 構造はこうです
App.jsx
には、MinusButton.jsx
とPlusButton.jsx
の2つのボタンがあります.もちろん、componentsフォルダにコンポーネントを作成して読み込みますよね?App.jsxはcountというステータス値を管理し、ステータス値を変更できる関数があります.Minus関数とPlus関数です.
この2つの関数を各構成部品に渡し、ボタン構成部品を押すと、アプリケーションも使用されます.jsxのcountステータスを変更する例.
上に表示されたflexを使用して画面を装飾し、ステータス管理、コンポーネント、プロパティを練習します.
💡 コード#コード#
📌 App.jsx
import React, { useState, useEffect } from 'react';
import { StyleSheet, Text, View } from 'react-native';
import PlusButton from './components/PlusButton';
import MinusButton from './components/MinusButton';
export default function App() {
const [state, setState] = useState(0);
const Minus = () => {
setState(state - 1);
};
const Plus = () => {
setState(state + 1);
};
return (
<View style={styles.container}>
<Text style={styles.counter}>카운터 : {state}</Text>
<View style={styles.buttonContainer}>
<PlusButton Plus={Plus} />
<MinusButton Minus={Minus} />
</View>
</View>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
alignItems: 'center',
justifyContent: 'center',
},
counter: {
fontSize: 20,
},
buttonContainer: {
flexDirection: 'row',
marginTop: 30,
},
});
import
const [state, setState] = useState(0);
👉 初期状態値0
は、変数state
のsetState
Plus
、Minus
)をそれぞれタグ付け(PlusButton
、MinusButton
)👉 関数を構成部品
📌PlusButton.jsx
import React from 'react';
import { StyleSheet, View, Text, TouchableOpacity } from 'react-native';
export default function PlusButton({ Plus }) {
return (
<TouchableOpacity onPress={Plus} style={styles.container}>
<Text style={styles.plusText}> Plus </Text>
</TouchableOpacity>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
alignItems: 'center',
backgroundColor: 'yellow',
width: 50,
height: 50,
},
plusText: {
marginTop: 15,
},
});
export default function PlusButton({ Plus })
👉 PlusButton
から必要な非構造化割当属性(Plus
)のみを抽出し、📌 MinusButton.jsx
import React from 'react';
import { StyleSheet, View, Text, TouchableOpacity } from 'react-native';
export default function MinusButton({ Minus }) {
return (
<TouchableOpacity onPress={Minus} style={styles.container}>
<Text style={styles.minusText}> Minus </Text>
</TouchableOpacity>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
alignItems: 'center',
backgroundColor: 'green',
width: 50,
height: 50,
},
minusText: {
marginTop: 15,
},
});
export default function MinusButton({ Minus })
👉 MinusButton
から必要な非構造化割当属性(Minus
)のみを抽出し、Reference
この問題について([1週間]簡単なカウンターを作る), 我々は、より多くの情報をここで見つけました https://velog.io/@jiyeah3108/1주차-간단한-카운터-만들기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol