React は Facebook の社内プロジェクトとして始まりました。 React の出現は革命的なイノベーションです。React は破壊的なフロントエンド フレームワークです。 React は公式には、ユーザー インターフェイスを作成するための宣言型で効率的かつ柔軟な JavaScript ライブラリとして紹介されています。React の主な機能は UI の構築ですが、プロジェクトが徐々に成長し、React はフロントエンドとバックエンドの両方をカバーする Web アプリ ソリューションになりました。 Angular はウォッチャー オブジェクトを使用し、Vue はオブザーバー モードを使用し、React は状態を使用します。それぞれに特徴があります。良いも悪いもなく、ニーズの違いによって選択が異なるだけです。 Reactの公式サイト: https://reactjs.org/GitHub アドレスは https://github.com/facebook/react です。 1. Reactでは、onClick、onChangeなどのReactによって制御されるイベント処理関数、setStateは非同期です。 React をインポートします。{ コンポーネント } から 'react' をインポートします。 デフォルトクラス Input をエクスポートし、Component を拡張します { コンストラクタ(props) { スーパー(小道具); this.state={ 名前: 'こんにちは' } } _onChange(e) { this.setState({ 名前:'世界' }) console.log(this.state.name); //こんにちは } 与える () { 戻る ( <div クラス名 = 'cp'> <input className='cp-input' value={this.state.name} onChange={this._onChange.bind(this)} type="text"/> </div> ); } } 2. addEventListenerなどのネイティブJSリスニングイベントでは、setStateは同期的です。 React をインポートします。{ コンポーネント } から 'react' をインポートします。 デフォルトクラス Input をエクスポートし、Component を拡張します { コンストラクタ(props) { スーパー(小道具); this.state={ 名前: 'こんにちは' } } _onChange(e) { // 何かをする } コンポーネントマウント() { 入力を document.querySelector('.cp-input') にします。 input.addEventListener('クリック', ()=>{ this.setState({ 名前:'世界' }) console.log(this.state.name); //ワールド }) } 与える () { 戻る ( <div クラス名 = 'cp'> <input className='cp-input' value={this.state.name} onChange={this._onChange.bind(this)} type="text"/> </div> ); } } 3. setTimeoutではsetStatetは同期的である React をインポートします。{ コンポーネント } から 'react' をインポートします。 デフォルトクラス Input をエクスポートし、Component を拡張します { コンストラクタ(props) { スーパー(小道具); this.state={ 名前: 'こんにちは' } } _onChange(e) { // 何かをする } コンポーネントマウント() { タイムアウトを設定します(()=>{ this.setState({ 名前:'世界' }) console.log(this.state.name); //ワールド }, 1000) } 与える () { 戻る ( <div クラス名 = 'cp'> <input className='cp-input' value={this.state.name} onChange={this._onChange.bind(this)} type="text"/> </div> ); } } 上記はReactのsetStateの同期と非同期のコードを詳細に解析した内容です。ReactのsetStateの同期と非同期の詳細については、123WORDPRESS.COMの他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: CentOS7におけるKVM仮想化の基本管理の詳しい説明
目次導入アイデアID配列インデックスのマッピング関係を確立するツリー構造の構築原理要約する導入組織階...
VMware Tools は VMware 仮想マシンに付属するツールで、VirtualBox (...
ハッシュモード(デフォルト)動作原理:ウェブページのハッシュ値の変化を監視する—> onhas...
1. nginxをダウンロードする [root@localhost my.Shells]# dock...
この記事では、MySQL 5.7.18アーカイブ圧縮版をインストールする具体的な方法を参考までに紹介...
目的: 1. Alibaba Cloud Serverを介してサーバーの外部ネットワークをマッピング...
目次エージェントとは何かプロキシの基礎知識ハンドラオブジェクトのメソッドプロキシでできること参考文献...
エラー発生: MySQL 5.7 から SQL にデータベースをエクスポートし、それを MySQL ...
目次1. プロジェクト要件次にコーディングを始める1. フロントエンドページを作成する(CSSスタイ...
目次1 関数カリー化とは何ですか? 2 カレーの役割と特徴2.1 パラメータの再利用2.2 早期復帰...
1. docker ps -a 実行中のイメージプロセスを表示する [root@mylinux~]#...
binlog は、MySQL のすべての DML 操作を記録するバイナリ ログ ファイルです。 bi...
目次導入質問設計 1: 隣接リストテーブルデザインSQL の例デザイン 2: パスの列挙テーブルデザ...
1. ダウンロードしたMySQLの圧縮パッケージをインストールディレクトリに解凍します。 2. 新し...
背景MySQL のデッドロックについて言えば、私は以前 MySQL のロックに関する基本的な紹介記事...