Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

反応ネイティブの状態とは何ですか?


状態は、データの取得元の場所です。状態をできるだけ単純にし、状態のあるコンポーネントの数を最小限に抑えるように常に努める必要があります。たとえば、州からのデータを必要とする10個のコンポーネントがある場合、それらすべての状態を保持する1つのコンテナコンポーネントを作成する必要があります。

例1

ユーザーがボタンを押すと、ボタンのタイトルがON/OFFに変わります。

状態は、以下に示すようにコンストラクター内で初期化されます-

constructor(props) {
   super(props);
   this.state = { isToggle: true };
}

isToggleは、状態に指定されたブール値です。ボタンのタイトルは、isToggleプロパティに基づいて決定されます。値がtrueの場合、ボタンのタイトルはONで、それ以外の場合はOFFです。

ボタンが押されると、以下に示すようにisToggle値を更新するsetStateを呼び出すonpressメソッドが呼び出されます-

onPress={() => {
   this.setState({ isToggle: !this.state.isToggle });
}}

ユーザーがボタンをクリックすると、onPressイベントが呼び出され、setStateがisToggleプロパティの状態を変更します。

App.js

import React, { Component } from "react";
import { Text, View, Button, Alert } from 'react-native';

class App extends Component {

   constructor(props) {
      super(props);
      this.state = { isToggle: true };
   }

   render(props) {
      return (
         <View style={{flex :1, justifyContent: 'center', margin: 15 }}>
            <Button
               onPress={() => {
                  this.setState({ isToggle: !this.state.isToggle });
               }}
               title={
                  this.state.isToggle ? 'ON' : "OFF"
               }
               color="green"
            />
         </View>
      );
   }
}
export default App;

出力

ユーザーがボタンを押すと、ボタンが切り替わります。

反応ネイティブの状態とは何ですか?

例2

ユーザーがテキストをクリックしたときにテキストを変更します。

以下の例では、状態はコンストラクター内に次のように表示されます-

constructor(props) {
   super(props);
   this.state = { myState: 'Welcome to Tutorialspoint' };
}

状態myStateは、次のようにTextコンポーネント内に表示されます-

<Text onPress={this.changeState} style={{color:'red', fontSize:25}}>{this.state.myState} </Text>

ユーザーがテキストをタッチまたは押すと、onPressイベントが発生し、メソッドthis.changeStateを呼び出します。このメソッドは、以下に示すように、状態myStateを更新してテキストを変更します-

changeState = () => this.setState({myState: 'Hello World'})


import React, { Component } from "react";
import { Text, View, Button, Alert } from 'react-native';

class App extends Component {

   constructor(props) {
      super(props);
      this.state = { myState: 'Welcome to Tutorialspoint' };
   }
   changeState = () => this.setState({myState: 'Hello World'})
   render(props) {
      return (
         <View style={{flex :1, justifyContent: 'center', margin: 15 }}>
            <View>
               <Text onPress={this.changeState} style={{color:'red', fontSize:25}}>                         {this.state.myState} </Text>
            </View>
         </View>
      );
   }
}
export default App;

出力

反応ネイティブの状態とは何ですか?


  1. react-navigation 5 を使用して React Native でナビゲーションを処理する方法

    React-navigation は、React Native でのナビゲーションについて話すときに頭に浮かぶナビゲーション ライブラリです。 私はこのライブラリの大ファンで、常に React Native でナビゲーションを処理するために使用する最初のソリューションです。これは、素晴らしく簡単な API があり、非常にカスタマイズ可能であるためです。 この記事を書いているのは、バージョン 5 がベータ版から安定版になったばかりだからです。いくつかの機能変更と、ルートを宣言するためのシンプルで異なる方法を提供する新しい API 設計が付属しています。 この記事では、新しい API につい

  2. React Native で動画を背景として使用する方法

    この投稿では、backgroundVideo を作成します。 React Nativeで。 React Native を使い始めたばかりの方は、私の記事 What you need to know to build mobile apps with React Native をチェックしてください。 デモ:Peleton ホーム画面 バックグラウンド ビデオは、アプリの UI に素晴らしい効果を追加できます。ここで行うように、たとえば広告を表示したり、ユーザーにメッセージを送信したりする場合にも役立ちます。 いくつかの基本的な要件が必要になります。開始するには、react-native 環